/* Shared presentation for the October feedback revision. */
.services-hero { grid-template-columns: 52% 48%; }
.services-hero .hero-copy { grid-column: 1; padding: 44px 10% 44px 13.5%; }
.services-hero .services-photo-blend { grid-column: 2; }
.services-hero .services-photo-blend::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #faf8f5 0%, rgba(250,248,245,.8) 12%, rgba(250,248,245,.38) 40%, rgba(250,248,245,.3) 100%);
}
@media (max-width: 620px) {
  .services-hero .hero-copy { order: 0; padding: 34px 7%; }
  .services-hero .services-photo-blend { order: 1; }
  .services-hero .services-photo-blend::after {
    background: linear-gradient(180deg, #faf8f5 0%, rgba(250,248,245,.65) 18%, rgba(250,248,245,.3) 50%);
  }
}
.site-contact .contact-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #faf8f5 0%, rgba(250,248,245,.8) 15%, rgba(250,248,245,.42) 42%, rgba(250,248,245,.3) 100%);
}
@media (max-width: 580px) {
  .site-contact .contact-photo::after {
    background: linear-gradient(180deg, #faf8f5 0%, rgba(250,248,245,.6) 20%, rgba(250,248,245,.3) 60%, rgba(250,248,245,.4) 100%);
  }
}
/* Industries: readable service list beside the original, uncropped photograph. */
.industries-layout { display: grid; grid-template-columns: 45% 55%; align-items: center; overflow: hidden; }
.industries-copy { grid-column: 2; grid-row: 1; padding: 45px 12% 40px 5%; position: relative; z-index: 1; }
.site-industries .industries-copy .industry-intro > div { padding: 0 0 16px; text-align: left; }
.site-industries .industries-copy .industry-simple .gold-rule { margin: 0; }
.site-industries .industries-copy .industry-grid { padding: 0; margin: 0; max-width: none; }
.site-industries .industries-copy .industry-card { padding: 22px 0; gap: 20px; }
.site-industries .industries-copy .industry-card h2 { font-size: 25px; }
.site-industries .industries-copy .industry-card p { font-size: 15px; line-height: 1.75; }
.industries-photo { grid-column: 1; grid-row: 1; position: relative; width: calc(100% + 65px); margin-right: -65px; }
.industries-photo img { display: block; width: 100%; height: auto; }
.industries-photo::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(270deg, #faf8f5 0%, rgba(250,248,245,.85) 12%, rgba(250,248,245,.25) 40%, rgba(250,248,245,.18) 100%); }
@media (max-width: 900px) {
  .industries-layout { grid-template-columns: 40% 60%; }
  .industries-copy { padding-right: 9%; }
}
@media (max-width: 700px) {
  .industries-layout { grid-template-columns: 1fr; }
  .industries-copy { grid-column: 1; grid-row: 1; padding: 35px 7% 10px; }
  .industries-photo { grid-column: 1; grid-row: 2; width: 100%; margin: 0; }
  .industries-photo::after { background: linear-gradient(180deg, #faf8f5 0%, rgba(250,248,245,.5) 20%, rgba(250,248,245,.18) 55%); }
}
.cfo-feature { margin: 32px auto 8px; width: 89%; max-width: 1480px; padding: 42px; display: grid; grid-template-columns: 1.1fr 1fr; gap: 55px; background: #fff; border-top: 3px solid var(--gold); box-shadow: 0 5px 22px #152d3908; }
.cfo-intro .icon-disc { margin-bottom: 20px; }
.cfo-intro h2 { font: 400 clamp(30px, 3vw, 44px)/1.15 Georgia, serif; margin: 12px 0 20px; }
.cfo-intro p:not(.eyebrow) { font-size: 15px; line-height: 1.8; color: #4c5e6b; }
.cfo-intro .cfo-lead { font-weight: 600; }
.cfo-intro .gold-button { margin-top: 12px; }
.cfo-capabilities { align-self: center; border-left: 1px solid #e5d9c5; padding-left: 40px; }
.cfo-capabilities h3 { font: 400 26px/1.3 Georgia, serif; margin: 0 0 25px; }
.cfo-capabilities ul { list-style: none; padding: 0; margin: 0; }
.cfo-capabilities li { position: relative; padding: 13px 0 13px 26px; border-bottom: 1px solid #eee7dc; color: #4c5e6b; font-size: 15px; line-height: 1.6; }
.cfo-capabilities li::before { content: '✓'; position: absolute; left: 0; color: #a77d33; }
@media (max-width: 800px) {
  .cfo-feature { grid-template-columns: 1fr; padding: 30px; gap: 30px; }
  .cfo-capabilities { border-left: 0; border-top: 1px solid #e5d9c5; padding: 28px 0 0; }
}
@media (max-width: 480px) {
  .cfo-feature { width: 90%; padding: 25px 20px; }
}
.site-home .home-copy { width: 70%; padding-block: 48px; }
.site-home .home-copy h1 { font-size: clamp(28px, 2.65vw, 42px); line-height: 1.2; letter-spacing: -.7px; }
.home-copy h1 > span { display: block; margin-bottom: 14px; }
.home-copy h1 > span:last-child { color: #947032; margin-bottom: 0; }
.home-copy .lead { max-width: 510px; }
.shared-closing { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 40px 7%; background: #0b293f; color: #fff; }
.shared-closing h2 { font-family: Georgia, serif; font-size: clamp(28px, 3vw, 40px); font-weight: 400; line-height: 1.2; margin: 0; }
.shared-closing .gold-button { display: inline-flex; align-items: center; justify-content: center; gap: 26px; flex-shrink: 0; padding: 15px 26px; background: #b38d49; color: white; font-size: 14px; font-weight: 600; border-radius: 2px; }
.shared-closing .gold-button:hover { background: #967034; }
.about .story h1 { font-size: clamp(36px, 3.5vw, 54px); }
.about .body-copy { font-size: 16px; line-height: 1.8; }
.about-pillars { padding: 48px 7% 35px; background: #fff; }
.about-pillars > h2 { font: 400 clamp(28px, 2.8vw, 38px)/1.2 Georgia, serif; margin: 14px 0 32px; }
.pillar-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 35px; }
.pillar-grid article { border-top: 1px solid #e5d9c5; padding-top: 22px; }
.pillar-number { color: #a77d33; font-size: 12px; letter-spacing: 2px; }
.pillar-grid h3 { font: 400 26px/1.25 Georgia, serif; margin: 14px 0; }
.pillar-grid p, .pillar-summary { color: var(--copy); font-size: 15px; line-height: 1.8; }
.pillar-summary { border-top: 1px solid #e5d9c5; padding-top: 22px; margin: 28px 0 0; max-width: 900px; }
.qualities .quality-value { font-size: clamp(22px, 2.3vw, 34px); }
@media (max-width: 900px) {
  .site-home .home-copy { width: 78%; }
  .about .body-copy { font-size: 15px; }
  .pillar-grid { gap: 22px; }
}
@media (max-width: 620px) {
  .site-home .home-copy { width: 100%; padding: 36px 7%; }
  .site-home .home-copy h1 { font-size: clamp(29px, 7.5vw, 42px); }
  .shared-closing { align-items: flex-start; flex-direction: column; padding: 32px 7%; gap: 24px; }
  .pillar-grid { grid-template-columns: 1fr; }
  .about-pillars { padding: 35px 7%; }
}
