/* Shared color components. Final approved palette tokens and treatments follow below. */
:root {
  --milk:#FCFBF9;--moss:#625F54;--blue:#9C6445;--celery:#DEDABB;
  --rule:rgba(98,95,84,.3);
  --paper:var(--milk);--ink:var(--moss);--gold:var(--blue);
  --sage:var(--celery);--panel:var(--celery);--cream:var(--moss);
}
.cinematic,.cinematic .light {
  --home-bg:var(--milk);--home-panel:var(--celery);--home-line:var(--rule);
  --home-text:var(--moss);--home-muted:var(--moss);--home-accent:var(--blue);
  --body:var(--moss);--muted:var(--moss);--line:var(--rule);--accent:var(--blue);
  background:var(--milk);color:var(--moss);
}
.cinematic h1,.cinematic h2,.cinematic h3,.cinematic h4 {color:var(--moss)}
.cinematic .site-header,.cinematic .site-header nav,.cinematic .page-hero,
.cinematic .home-starts,.cinematic .home-formation,.cinematic .home-resources,
.cinematic footer {background:var(--milk);color:var(--moss);border-color:var(--rule)}
.cinematic .page-hero {border-bottom:1px solid var(--rule)}
.cinematic .intro-strip,.cinematic .callout,.cinematic .framework-center {
  background:var(--celery);color:var(--moss);border-color:var(--rule);
}
.cinematic .callout {border-top:1px solid var(--rule)}
.cinematic .eyebrow,.cinematic .stream .eyebrow,.cinematic .formation-statement>.eyebrow,
.cinematic .framework-center .eyebrow,.cinematic footer .eyebrow,
.cinematic .formation-statement .gold,.cinematic .gold,
.cinematic .formation-foundations-copy h4,.cinematic .credential strong,
.cinematic .framework-center p:not(.eyebrow),.cinematic .formation-statement .discipleship-summary,
.cinematic .resource-card .eyebrow,.cinematic .resource-card .meta,
.cinematic .white-paper-grid .resource-card:before,
.cinematic .footer-top>div>p:not(.eyebrow),.cinematic .footer-bottom {color:var(--moss)}
.cinematic .stream,.cinematic .light .stream,.cinematic .resource-card,
.cinematic .light .resource-card,.cinematic .outputs,.cinematic .light .outputs,
.cinematic .example,.cinematic .light .example,.cinematic .notice {
  background:var(--celery);color:var(--moss);border:1px solid var(--rule);
}
.cinematic .outputs,.cinematic .example,.cinematic .notice {border-left:3px solid var(--moss)}
.cinematic .outputs h3 {color:var(--moss)}
.cinematic .pathway {border-left-color:var(--blue)}
.cinematic .resource-card p {color:var(--moss)}
.cinematic .resource-card:hover,.cinematic .light .resource-card:hover {background:var(--milk);border-color:var(--moss)}
.cinematic .text-link,.cinematic .light .text-link,.cinematic .formation-statement .text-link {
  color:var(--blue);border-color:currentColor;
}
/* Grounded text keeps small links readable on Celery cards. */
.cinematic .intro-strip .text-link,.cinematic .resource-card .text-link,
.cinematic .stream .text-link,.cinematic .prose blockquote a {color:var(--moss);border-color:currentColor}
.cinematic .text-link:hover,.cinematic .light .text-link:hover,
.cinematic .resource-card .text-link:hover {color:var(--moss);border-color:currentColor}
.cinematic .button,.cinematic .light .button {
  background:var(--blue);color:var(--milk);border-color:var(--blue);
}
.cinematic .button:hover,.cinematic .light .button:hover,.cinematic .nav-cta:hover {
  background:var(--moss);border-color:var(--moss);color:var(--milk);
}
.cinematic .button.secondary,.cinematic .light .button.secondary {
  background:var(--milk);color:var(--blue);border-color:var(--blue);
}
.cinematic .button.secondary:hover {background:var(--blue);color:var(--milk)}
.cinematic .hero {background:var(--milk);color:var(--moss)}
.cinematic .hero h1,.cinematic .hero h1 em,.cinematic .hero .eyebrow,
.cinematic .hero .lead,.cinematic .hero-note {color:var(--moss)}
.cinematic .hero-note:before {border-color:var(--moss)}
.cinematic .hero-image:after {
  background:linear-gradient(90deg,rgba(252,251,249,.99) 0%,rgba(252,251,249,.98) 40%,rgba(252,251,249,.91) 60%,rgba(252,251,249,.18) 100%);
}
.cinematic .site-header nav {border-color:var(--rule)}
.cinematic nav>a:hover,.cinematic nav>a[aria-current=page]:not(.button) {color:var(--blue)}
.cinematic nav>a[aria-current=page]:not(.button):after {border-color:var(--blue)}
.cinematic .menu-toggle {color:var(--moss);border-color:var(--moss)}
.cinematic .footer-bottom {border-color:var(--rule)}
.cinematic footer .text-link {color:var(--blue);border-color:var(--blue)}
.cinematic footer a:hover {color:var(--blue)}
/* Preserve supplied logo artwork and accessible names, rendered in moss on milk. */
@supports (mask-image: url('')) {
  .cinematic .header-logo,.cinematic .footer-logo {position:relative}
  .cinematic .header-logo img,.cinematic .footer-logo img {opacity:0}
  .cinematic .header-logo:before,.cinematic .footer-logo:before {
    content:'';position:absolute;inset:0;background:var(--moss);
    mask-repeat:no-repeat;mask-position:center;mask-size:contain;
  }
  .cinematic .header-logo:before {mask-image:url('/assets/7Mile%20banner%20Logo%20transparent.png')}
  .cinematic .footer-logo:before {mask-image:url('/assets/7Mile-logo-transparent.png')}
}
.cinematic .prose blockquote {background:var(--celery);color:var(--moss);border-color:var(--moss)}
.cinematic .form-field input,.cinematic .form-field textarea {
  background:var(--milk);color:var(--moss);border-color:var(--moss);
}
.cinematic .form-field input::placeholder,.cinematic .form-field textarea::placeholder {color:var(--moss);opacity:1}
.cinematic .form-status.is-success,.cinematic .form-status.is-error {color:var(--moss);font-weight:600}
.cinematic .skip {background:var(--milk);color:var(--moss)}
.cinematic ::selection {background:var(--moss);color:var(--milk)}
.cinematic a:focus-visible,.cinematic button:focus-visible,.cinematic summary:focus-visible,
.cinematic input:focus-visible,.cinematic textarea:focus-visible {outline-color:var(--blue)}
@media(max-width:800px) {
  .cinematic .hero-image:after {background:rgba(252,251,249,.93)}
}
@media print {
  .cinematic,.cinematic .light,.cinematic .page-hero,.cinematic .home-starts,
  .cinematic .home-formation,.cinematic .home-resources,.cinematic .framework-center {
    background:white;color:black;--home-text:#000;--home-muted:#333;--home-accent:#333;
  }
  .cinematic h1,.cinematic h2,.cinematic h3,.cinematic h4,.cinematic .framework-center p:not(.eyebrow) {color:black}
}

/* Sitewide approved palette: screen colors sampled from Sam's supplied swatches.
   These are image samples, not manufacturer-certified paint values. */
.cinematic.named-palette {
  --sw-background:#F6F6F6;--sw-celery:#DEDABB;--sw-grounded:#625F54;--sw-artifact:#6C7F88;
  --sw-cottage:#7B8C94;--sw-rooted:#9C6445;--sw-rose:#A68977;
  --sw-rule:rgba(98,95,84,.3);
  --milk:#FCFBF9;--moss:var(--sw-grounded);--blue:var(--sw-rooted);--celery:var(--sw-celery);
  --paper:var(--sw-background);--ink:var(--sw-grounded);--gold:var(--sw-rooted);
  --rule:var(--sw-rule);--line:var(--sw-rule);
}
.cinematic.named-palette,.cinematic.named-palette .light {
  --home-bg:var(--sw-background);--home-panel:var(--sw-celery);--home-line:var(--sw-rule);
  --home-text:var(--sw-grounded);--home-muted:var(--sw-grounded);--home-accent:var(--sw-grounded);
  --body:var(--sw-grounded);--muted:var(--sw-grounded);--accent:var(--sw-grounded);
  background:var(--sw-background);color:var(--sw-grounded);
}
.cinematic.named-palette .site-header,.cinematic.named-palette .site-header nav,
.cinematic.named-palette .home-starts,.cinematic.named-palette .home-formation,
.cinematic.named-palette .home-resources {
  background:var(--sw-background);color:var(--sw-grounded);border-color:var(--sw-rule);
}
.cinematic.named-palette .header-logo:before {background:var(--sw-grounded)}
.cinematic.named-palette nav>a:hover,.cinematic.named-palette nav>a[aria-current=page]:not(.button) {color:var(--sw-grounded)}
.cinematic.named-palette .button,.cinematic.named-palette .light .button {
  background:var(--sw-rooted);border-color:var(--sw-rooted);color:var(--milk);
}
.cinematic.named-palette .button:hover,.cinematic.named-palette .light .button:hover {
  background:var(--sw-grounded);border-color:var(--sw-grounded);color:var(--milk);
}
.cinematic.named-palette .button.secondary {background:transparent;border-color:var(--sw-grounded);color:var(--sw-grounded)}
.cinematic.named-palette .text-link,.cinematic.named-palette .light .text-link,
.cinematic.named-palette .formation-statement .text-link,.cinematic.named-palette .resource-card .text-link {
  color:var(--sw-grounded);border-color:var(--sw-grounded);
}
.cinematic.named-palette .text-link:hover {border-color:var(--sw-rooted)}
.cinematic.named-palette .hero {
  background:var(--sw-grounded);color:var(--milk);
}
.cinematic.named-palette .hero h1,.cinematic.named-palette .hero .lead,.cinematic.named-palette .hero-note {
  color:var(--milk);
}
.cinematic.named-palette .hero h1 em,.cinematic.named-palette .hero .eyebrow {color:var(--sw-celery)}
.cinematic.named-palette .hero-note:before {border-color:var(--sw-rose)}
.cinematic.named-palette .hero-image:after {
  background:linear-gradient(90deg,rgba(98,95,84,.84) 0%,rgba(98,95,84,.76) 40%,rgba(98,95,84,.58) 60%,rgba(98,95,84,0) 100%);
}
.cinematic.named-palette .hero .button.secondary {color:var(--milk);border-color:var(--sw-celery)}
.cinematic.named-palette .hero .button.secondary:hover {background:var(--sw-grounded);border-color:var(--sw-grounded)}
/* Slate colors define narrow bands and rules; lighter tones support long reading. */
.cinematic.named-palette .intro-strip {background:var(--sw-artifact);color:var(--milk)}
.cinematic.named-palette .intro-strip .text-link {color:var(--milk);border-color:var(--milk);font-size:1.1rem}
.cinematic.named-palette .intro-strip p {font-size:1.3rem}
.cinematic.named-palette .stream {background:var(--sw-celery);border-color:var(--sw-rose);border-top:5px solid var(--sw-artifact)}
.cinematic.named-palette .stream:nth-child(2) {border-top-color:var(--sw-cottage)}
.cinematic.named-palette .pathway {border-left-color:var(--sw-rooted)}
.cinematic.named-palette .home-formation {border-top:5px solid var(--sw-rose);border-bottom-color:var(--sw-rose)}
.cinematic.named-palette .home-practice .feature-list article {border-top-color:var(--sw-cottage)}
.cinematic.named-palette .resource-card {background:var(--sw-celery);border:1px solid var(--sw-rose);border-top:5px solid var(--sw-rooted)}
.cinematic.named-palette .resource-card:hover {background:var(--milk);border-color:var(--sw-grounded)}
.cinematic.named-palette .callout {background:var(--sw-grounded);color:var(--milk);border-color:var(--sw-grounded)}
.cinematic.named-palette .callout h2,.cinematic.named-palette .callout p {color:var(--milk)}
.cinematic.named-palette footer {background:var(--sw-grounded);color:var(--milk);border-color:var(--sw-rose)}
.cinematic.named-palette .footer-logo:before {background:var(--sw-celery)}
.cinematic.named-palette footer .eyebrow,.cinematic.named-palette .footer-top>div>p:not(.eyebrow),
.cinematic.named-palette .footer-bottom,.cinematic.named-palette footer .text-link {color:var(--milk)}
.cinematic.named-palette .footer-bottom {border-color:var(--sw-cottage)}
.cinematic.named-palette footer a:hover {color:var(--sw-celery)}
.cinematic.named-palette ::selection {background:var(--sw-grounded);color:var(--milk)}
.cinematic.named-palette a:focus-visible,.cinematic.named-palette button:focus-visible {outline-color:var(--sw-grounded)}
.cinematic.named-palette .hero a:focus-visible,.cinematic.named-palette .callout a:focus-visible,
.cinematic.named-palette footer a:focus-visible {outline-color:var(--sw-celery)}
@media(max-width:800px) {
  .cinematic.named-palette .hero-image:after {background:linear-gradient(90deg,rgba(98,95,84,.84),rgba(98,95,84,.76))}
}
@media print {
  .cinematic.named-palette,.cinematic.named-palette .light,.cinematic.named-palette .hero,
  .cinematic.named-palette .home-starts,.cinematic.named-palette .home-formation,.cinematic.named-palette .home-resources,
  .cinematic.named-palette .intro-strip {background:white;color:black}
  .cinematic.named-palette .hero h1,.cinematic.named-palette .hero .lead,.cinematic.named-palette .hero h1 em {color:black}
}

/* Interior page treatments use the same background, panels, and accents. */
.cinematic.named-palette .page-hero {
  background:var(--sw-background);color:var(--sw-grounded);border-color:var(--sw-rule);
}
.cinematic.named-palette .outputs {border-left-color:var(--sw-artifact)}
.cinematic.named-palette .example,.cinematic.named-palette .notice {border-left-color:var(--sw-rose)}
.cinematic.named-palette .framework-center {border-top:5px solid var(--sw-artifact)}
.cinematic.named-palette .framework-part,.cinematic.named-palette .flow-steps>div {border-color:var(--sw-cottage)}
.cinematic.named-palette .form-field input,.cinematic.named-palette .form-field textarea {
  background:var(--sw-background);color:var(--sw-grounded);border-color:var(--sw-grounded);
}
.cinematic.named-palette input:focus-visible,.cinematic.named-palette textarea:focus-visible,
.cinematic.named-palette summary:focus-visible {outline-color:var(--sw-grounded)}
@media print {
  .cinematic.named-palette .page-hero,.cinematic.named-palette .framework-center {background:white;color:black}
}

/* Homepage consulting introduction. */
.cinematic.named-palette .home-consulting{padding:72px 0}
.cinematic.named-palette .home-consulting .container{display:block}
.cinematic.named-palette .home-consulting .consulting-copy{max-width:960px}
.cinematic.named-palette .home-consulting p.eyebrow{font-size:.8rem;letter-spacing:.14em;color:inherit;margin-bottom:24px}
.cinematic.named-palette .home-consulting h2{color:inherit}
.cinematic.named-palette .home-consulting .text-link{margin-top:10px;white-space:normal}
@media(max-width:800px){.cinematic.named-palette .home-consulting{padding:52px 0}}
