/* Shared homepage palette and responsive typography for all interior SDCs. */
.gwd-interior {
  --accent: #a5232b; --accent-d: #801b22; --cta: #a5232b; --cta-d: #801b22;
  --paper-2: #e8e3dc; --ink-2: #171717; --muted: #57534e;
  --line-d: rgba(32,32,32,.18); --font-sans: Inter, Arial, sans-serif;
  font-family: var(--font-sans); background: var(--paper);
}
.gwd-interior .page-hero { background: var(--paper-soft); padding: clamp(3rem,6vw,6rem) 0; }
.gwd-interior .page-hero .statement { font-family: "Inter Tight",Inter,sans-serif; font-weight:800; font-size:clamp(2.5rem,5vw,5rem); line-height:1.05; max-width:1150px; letter-spacing:-.045em; }
.gwd-interior .page-hero .statement strong { color:var(--brand-red); }
.gwd-interior .page-hero h1 { font-size:.85rem; letter-spacing:.12em; }
.gwd-interior .page-hero .text-lg { max-width:56rem; line-height:1.7; }
.gwd-interior .prose-block { background:var(--paper); border-bottom:1px solid var(--line-d); }
.gwd-interior .prose-block > div { max-width:1100px; padding-block:clamp(2.5rem,4vw,4.5rem); }
.gwd-interior .prose-block h2 { font-family:"Inter Tight",Inter,sans-serif; font-size:clamp(1.8rem,3vw,2.8rem); font-weight:800; letter-spacing:-.025em; }
.gwd-interior .prose-body { font-size:1.1rem; line-height:1.75; color:var(--muted); overflow-wrap:anywhere; }
.gwd-interior .prose-body p { margin-bottom:1.15rem; }
.gwd-interior .prose-body ul,.gwd-interior .prose-body ol { padding-left:1.5rem; margin:1.2rem 0; }
.gwd-interior .prose-body li { margin:.5rem 0; }
.gwd-interior .prose-body ul { list-style:disc; }
.gwd-interior .prose-body ol { list-style:decimal; }
.gwd-interior .prose-body h2,.gwd-interior .prose-body h3 { color:var(--ink); margin:2rem 0 1rem; }
.gwd-interior .prose-body a { color:var(--brand-red); text-decoration:underline; text-underline-offset:.2em; }
.gwd-interior .cta-band,.gwd-interior .site-footer { background:#171717; color:#faf7f2; }
.gwd-interior .cta-band h2,.gwd-interior .cta-band h2 strong { color:#faf7f2; }
.gwd-interior .cta-band .cta-eyebrow { color:#f1aaa4; }
.gwd-interior .site-footer a { color:inherit; }
.gwd-interior .site-footer ul { list-style:none; padding:0; }
.gwd-interior .site-footer h2 { font:700 .8rem/1.5 "IBM Plex Mono",monospace; }
.gwd-interior .work-card { min-height:0; padding:1.5rem; border:1px solid var(--line-d); border-radius:1.4rem; background:#171717; color:#faf7f2; transition:background-color .3s ease; }
.gwd-interior .work-card:hover { background:#63252b; }
.gwd-interior .work-card p { color:#e2d8d0; }
.gwd-interior .work-card img { object-fit:contain; }
.gwd-interior .site-header .brand { flex-shrink:0; }
.gwd-interior .gwd-btn--cta { background:var(--brand-red); border-radius:0; }
.gwd-interior .gwd-btn--cta:hover,.gwd-interior .gwd-btn--cta:focus-visible { background:var(--brand-red-hover); }
.gwd-interior .page-hero h1,.gwd-interior .text-accent { color:var(--brand-red); }
.gwd-interior .site-footer [id^="block-gwd-footer"] > p { display:none; }
@media(max-width:640px) { .gwd-interior .page-hero > div,.gwd-interior .prose-block > div { padding-inline:1.25rem; } }
@media(prefers-reduced-motion:reduce) { .gwd-interior .work-card { transition:none; } }

/* Editorial refinement: shorter heroes, readable stories and visible human placeholders. */
.gwd-interior .page-hero {padding:clamp(2rem,4vw,4rem) 0;}
.gwd-interior .page-hero > div {padding-block:0;}
.gwd-interior .page-hero .statement {font-size:clamp(2.1rem,3.7vw,3.75rem);max-width:1000px;line-height:1.1;letter-spacing:-.035em;text-transform:none;color:var(--ink);margin-block:1rem 1.5rem;}
.gwd-interior .prose-block > div {max-width:1180px;}
.gwd-interior .prose-block h2 {font-size:clamp(1.65rem,2.3vw,2.3rem);line-height:1.2;}
.gwd-interior .prose-body {max-width:70ch;}
@media(min-width:1000px){.gwd-interior .prose-block > div:has(> h2){display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);gap:3rem;align-items:start;}.gwd-interior .prose-block h2{margin:0;}}
.gwd-interior .case-facts {padding:1.5rem;background:#e8e3dc;border-left:4px solid #a5232b;line-height:1.7;}
.gwd-interior .case-hero-shot {padding:clamp(1rem,3vw,2.5rem);background:#e8e3dc;}
.gwd-interior .case-hero-shot img {max-height:620px;object-fit:contain;}
.gwd-interior .person-card {overflow:hidden;border:1px solid #d6cec4;background:#faf7f2;border-radius:1rem;}
.gwd-interior .person-card .body {padding:1.75rem;}
.portrait-placeholder {aspect-ratio:4/3;background:linear-gradient(135deg,#e7d5d0,#eee8df);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#803139;}
.portrait-placeholder > span {font:600 4rem/1 Inter,sans-serif;border:1px solid #bfa29b;border-radius:50%;width:7rem;height:7rem;display:grid;place-items:center;}
.portrait-placeholder small {font:500 .8rem/1.4 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;}

.editorial-grid-shell,.story-figure figure{max-width:1180px;margin:auto;padding:clamp(2rem,4vw,4rem) 1.5rem;}
.editorial-grid h2,.story-figure h2{font:800 clamp(1.7rem,2.4vw,2.4rem)/1.2 "Inter Tight",Inter,sans-serif;margin-bottom:1.5rem;}
.editorial-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;}
.gwd-interior .editorial-cards .prose-block{border:1px solid #d1c7bd;border-top:4px solid #a5232b;background:#faf7f2;border-radius:.5rem;}
.gwd-interior .editorial-cards .prose-block>div{display:block;padding:1.5rem;}
.gwd-interior .editorial-cards .prose-block h2{font-size:1.55rem;margin-bottom:1rem;}
.gwd-interior .editorial-cards .prose-body{font-size:1rem;}
.story-figure{background:#e8e3dc;}
.story-figure img{display:block;width:100%;max-width:850px;max-height:650px;object-fit:contain;margin:auto;background:white;}
.story-figure figcaption{font-size:.9rem;line-height:1.6;color:#57534e;max-width:850px;margin:1rem auto 0;}
.story-figure figcaption span{display:block;}
@media(max-width:900px){.editorial-cards{grid-template-columns:1fr;}}

.gwd-interior .process-step h2{border-left:4px solid #a5232b;padding-left:1.25rem;}

/* Portfolio: separate imagery from readable, naturally flowing labels. */
.gwd-interior .work-teaser > div{padding-block:clamp(2rem,4vw,3.5rem)}
.gwd-interior .work-teaser .work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;align-items:stretch}
.gwd-interior .work-teaser .work-card{display:flex;flex-direction:column;gap:.85rem;padding:1.15rem;min-height:0;height:auto;border:1px solid #383332;border-radius:1rem;overflow:hidden}
.gwd-interior .work-teaser .work-card::after{content:none}
.gwd-interior .work-teaser .work-card > a{display:block;position:relative;flex:none;background:white;border-radius:.5rem;overflow:hidden}
.gwd-interior .work-teaser .work-card img{display:block;position:static;width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;transform:none;filter:none}
.gwd-interior .work-teaser .work-card p{position:static;margin:0;font-size:.75rem;line-height:1.5;letter-spacing:.08em;color:#ded3cb}
.gwd-interior .work-teaser .work-card h3{position:static;inset:auto;margin:0;padding:0;font-size:clamp(1.25rem,1.6vw,1.65rem);line-height:1.2;letter-spacing:-.02em;color:#fff}
.gwd-interior .work-teaser .work-card h3 a{color:inherit;text-decoration:none}
.gwd-interior .work-teaser .work-card:hover,.gwd-interior .work-teaser .work-card:focus-within{background:#63252b;border-color:#aa5057}
.gwd-interior .work-teaser .work-card h3 a:hover{text-decoration:underline;text-underline-offset:.2em}
.gwd-interior .work-teaser .work-card a:focus-visible{outline:3px solid #f1b1b5;outline-offset:3px}
@media(max-width:1000px){.gwd-interior .work-teaser .work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.gwd-interior .work-teaser .work-grid{grid-template-columns:1fr}.gwd-interior .work-teaser > div{padding-inline:1rem}.gwd-interior .work-teaser .work-card h3{font-size:1.4rem}}

/* Align footer columns and legal row with the pre-footer CTA content edges. */
.gwd-interior .site-footer > .shell { width:min(calc(100% - 4rem),1336px); margin-inline:auto; }

/* Keep case-study mockups within their source resolution. */
.gwd-interior .case-hero-shot {
  width:100%; max-width:960px; margin:2rem auto 0;
  padding:clamp(1rem,2.5vw,2rem);
  background:#f7f4ef; border:1px solid #ded8d0; border-radius:16px;
  box-shadow:0 12px 32px rgba(24,22,20,.06);
}
.gwd-interior .case-hero-shot img {
  display:block; width:100%; max-width:896px; height:auto; max-height:none;
  margin-inline:auto; object-fit:contain;
}
@media(max-width:600px){
  .gwd-interior .case-hero-shot {margin-top:1.25rem;padding:.5rem;border-radius:10px;box-shadow:none;}
}
