.editorial .site-header { max-width:1440px; margin-inline:auto; padding-inline:36px; }
.content-nav { display:flex; gap:26px; margin-left:auto; font-size:.9375rem; }
.content-nav a,.studio-return { min-height:44px; display:inline-flex; align-items:center; }
.content-nav a:hover,.studio-return:hover { color:var(--blue); text-decoration:underline; text-underline-offset:5px; }
.studio-return { font-size:.875rem; gap:20px; border-left:1px solid var(--line); padding-left:28px; }
.content-main { max-width:1250px; margin-inline:auto; padding:0 44px; }
.breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; color:var(--muted); font-size:.875rem; margin-top:24px; }
.breadcrumbs a { text-decoration:underline; text-underline-offset:4px; }
.breadcrumbs [aria-current] { color:var(--ink); }
.content-hero { padding:58px 0 64px; border-bottom:1px solid var(--line); }
.editorial h1 { font-size:clamp(3rem,6.4vw,5.9rem); line-height:1.04; letter-spacing:-.065em; margin:24px 0; max-width:1000px; overflow-wrap:break-word; }
.content-intro { max-width:740px; font-size:clamp(1.125rem,1.6vw,1.375rem); line-height:1.7; color:var(--muted); }
.content-cta { margin-top:29px; }
.article-byline { color:var(--muted); margin-top:24px; font-size:.875rem; }
.article-byline a { text-decoration:underline; text-underline-offset:4px; }
.project-figure { margin:28px 0 0; }
.project-figure img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:4px; }
.project-figure figcaption { color:var(--muted); font-size:.875rem; margin-top:12px; line-height:1.6; }
.project-steps { padding-left:24px; color:var(--muted); }
.workflow-calculator { padding:28px; background:var(--soft); border:1px solid var(--line); border-radius:6px; margin:26px 0; }
.calculator-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.calculator-fields label { display:flex; flex-direction:column; gap:8px; font-size:.9375rem; color:var(--ink); }
.calculator-fields input { width:100%; min-height:48px; padding:10px 12px; border:1px solid #9fafbb; border-radius:4px; color:var(--ink); background:var(--white); }
.calculator-fields small { color:var(--muted); font-size:.8125rem; }
.calculator-actions { display:flex; flex-wrap:wrap; gap:14px 24px; margin-top:28px; }
.calculator-reset { background:transparent; border:0; text-decoration:underline; text-underline-offset:4px; padding:10px 0; min-height:44px; }
.calculator-result { border-top:1px solid var(--line); margin-top:28px; padding-top:24px; }
.calculator-totals { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:0 0 22px; }
.calculator-totals dt { color:var(--muted); font-size:.875rem; }
.calculator-totals dd { margin:6px 0 0; color:var(--ink); font-size:1.125rem; }
.reading-body .calculator-difference { color:var(--ink); font-size:1.35rem; font-weight:500; line-height:1.4; }
.reading-body #calculator-error { color:#8b2020; margin-top:22px; }
@media(max-width:600px) { .workflow-calculator { padding:20px; } .calculator-fields,.calculator-totals { grid-template-columns:1fr; gap:18px; } .calculator-actions .primary-button { width:100%; justify-content:center; } }
.reading-layout { display:grid; grid-template-columns:200px minmax(0,760px); justify-content:space-between; gap:65px; padding-top:64px; }
.page-contents { align-self:start; position:sticky; top:28px; display:flex; flex-direction:column; gap:13px; font-size:.875rem; line-height:1.5; }
.page-contents p { color:var(--blue); margin-bottom:9px; font-weight:500; }
.page-contents a { padding-block:4px; color:var(--muted); }
.page-contents a:hover { color:var(--blue); text-decoration:underline; text-underline-offset:4px; }
.reading-body section { padding-bottom:52px; margin-bottom:45px; border-bottom:1px solid var(--line); scroll-margin-top:30px; }
.reading-body section:last-child { border-bottom:0; margin-bottom:0; }
.reading-body h2 { font-size:clamp(1.65rem,2.9vw,2.25rem); letter-spacing:-.045em; line-height:1.2; margin-bottom:25px; }
.reading-body p { margin:0 0 19px; color:var(--muted); line-height:1.85; }
.reading-body p:last-child { margin-bottom:0; }
.reading-body strong { color:var(--ink); font-weight:600; }
.reading-body a { color:var(--blue); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.reading-body a:hover { color:var(--ink); }
.reading-body ul { padding-left:22px; margin:24px 0; color:var(--muted); }
.reading-body li { padding-left:5px; margin-bottom:12px; line-height:1.8; }
.deliverables { margin:0; }
.deliverables>div { display:grid; grid-template-columns:minmax(135px,1fr) 2fr; gap:28px; border-bottom:1px solid var(--line); padding:24px 0; }
.deliverables>div:first-child { padding-top:0; }
.deliverables>div:last-child { border:0; padding-bottom:0; }
.deliverables dt { font-weight:500; color:var(--ink); line-height:1.5; }
.deliverables dd { margin:0; color:var(--muted); line-height:1.8; }
.answer { border-top:1px solid var(--line); }
.answer summary { cursor:pointer; font-weight:500; padding:20px 27px 20px 0; line-height:1.6; }
.answer p { padding-bottom:24px; }
.reading-body .contact-address { font-size:clamp(1.15rem,3vw,2rem); letter-spacing:-.035em; overflow-wrap:anywhere; }
.brief-template { font:inherit; font-size:.9375rem; line-height:2.2; white-space:pre-wrap; overflow-wrap:anywhere; background:var(--selected); border-left:3px solid var(--blue); padding:24px; margin:25px 0; }
.project-invitation { padding:42px 0 60px; border-top:1px solid var(--line); }
.project-invitation h2 { font-size:clamp(2.2rem,4vw,3.5rem); letter-spacing:-.05em; line-height:1.12; margin:20px 0; }
.project-invitation>p:not(.eyebrow) { color:var(--muted); max-width:540px; margin-bottom:26px; }
.editorial .site-directory,.editorial .site-footer { max-width:1368px; margin-inline:auto; padding-inline:36px; }
.error-page { padding-top:15vh; }
.error-page nav { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin:35px 0; }
.error-page nav>a:not(.primary-button) { color:var(--blue); text-decoration:underline; text-underline-offset:4px; }
@media(max-width:900px) { .editorial .site-header { gap:24px; } .studio-return { display:none; } .content-main { padding-inline:28px; } .reading-layout { grid-template-columns:160px minmax(0,1fr); gap:35px; } .deliverables>div { grid-template-columns:1fr; gap:12px; } }
@media(max-width:600px) { .editorial .site-header { padding:20px; flex-wrap:wrap; gap:16px; } .content-nav { width:100%; margin:0; justify-content:space-between; gap:16px; border-top:1px solid var(--line); padding-top:8px; } .content-main { padding-inline:22px; } .breadcrumbs { font-size:.875rem; gap:6px 9px; } .content-hero { padding:32px 0 38px; } .editorial h1 { font-size:clamp(2.5rem,10vw,3.7rem); letter-spacing:-.055em; margin:19px 0; } .reading-layout { display:block; padding-top:30px; } .page-contents { position:static; padding-bottom:25px; margin-bottom:36px; border-bottom:1px solid var(--line); gap:4px; } .page-contents a { min-height:40px; } .reading-body section { margin-bottom:30px; padding-bottom:32px; } .reading-body h2 { font-size:1.8rem; } .brief-template { padding:18px; font-size:.875rem; } .editorial .site-directory,.editorial .site-footer { padding-inline:22px; } .error-page { padding-top:10vh; } }
