.atlas-site .content-section { padding-block: 80px; }
.content-section .section-heading h2 { max-width: 720px; font-size: clamp(1.9rem, 3vw, 2.8rem); line-height: 1.13; }
.content-section h3 { line-height: 1.2; }
.content-link { display: inline-flex; align-items: baseline; gap: 12px; padding-block: 8px; font-weight: 650; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.content-link span { color: #167386; }
@media (min-width: 861px) {
  .atlas-site :is(#partners, #partners-preview) .section-heading { grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); gap: clamp(28px,4vw,64px); }
  :is(#partners, #partners-preview) .section-heading > p { max-width: 38ch; justify-self: start; }
}
.section-action { display: flex; justify-content: flex-end; margin-top: 24px; }
.partner-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.partner-card { display: grid; align-content: start; gap: 16px; min-width: 0; padding: 24px 16px 20px; text-align: center; border: 1px solid rgba(16, 42, 51, .12); border-radius: 20px; background: rgba(255, 255, 255, .6); }
.partner-logo { display: flex; align-items: center; justify-content: center; height: 84px; }
.partner-logo img { width: 100%; height: 100%; max-width: 176px; object-fit: contain; }
.partner-card span { font-size: .9rem; line-height: 1.4; font-weight: 600; }
.review-card { display: grid; grid-template-columns: .7fr 2fr; gap: 42px; padding: 36px; border: 1px solid rgba(16,42,51,.14); border-radius: 24px; background: rgba(255,255,255,.5); box-shadow: inset 5px 0 #267e92; }
.review-person { display: flex; align-items: flex-start; gap: 16px; }
.review-initial { display: grid; place-items: center; width: 48px; height: 48px; flex-shrink: 0; color: #e5f5f8; background: #0b495b; border-radius: 50%; font-size: 1.25rem; }
.review-person h3 { margin: 1px 0 4px; font-size: 1.1rem; }
.review-person p { margin: 0; color: #536a70; font-size: .9rem; }
.review-topic { margin: 0 0 12px; color: #32626f; font-size: .9rem; font-weight: 650; }
.review-body blockquote { margin: 0; }
.review-body blockquote p { margin: 0; font-size: clamp(1.1rem, 1.6vw, 1.35rem); line-height: 1.65; }
.review-context { max-width: 780px; margin: 20px 0 0; color: #536a70; font-size: .9rem; line-height: 1.65; }
.letters-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-top: 28px; }
.letter-card { padding: 20px; border: 1px solid rgba(16,42,51,.16); border-radius: 20px; background: rgba(255,255,255,.6); }
.letter-card img { max-height: 260px; margin-inline: auto; object-fit: contain; }
.letter-card h3 { margin: 20px 0 8px; font-size: 1.15rem; }
.solution-section { color: #e1eff2; background: radial-gradient(ellipse at 100% 0,rgba(25,122,155,.25),transparent 55%),linear-gradient(130deg,#082d40,#064556); }
.solution-section .section-heading > p { color: #b4cbd3; }
.solution-tabs { display: none; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; margin-bottom: 18px; }
.solution-selector[data-enhanced] .solution-tabs { display: grid; }
.solution-tabs button { display: flex; align-items: center; gap: 12px; min-width: 0; min-height: 72px; padding: 15px 18px; text-align: left; color: #d1e3e8; border: 1px solid #3f7182; border-radius: 14px; background: rgba(5,31,46,.3); font-size: .95rem; line-height: 1.4; overflow-wrap: anywhere; hyphens: auto; cursor: pointer; }
.solution-tabs button span { font: 600 .8rem ui-monospace,monospace; color: #89cbd7; }
.solution-tabs button[aria-selected="true"] { color: #062e3a; background: #cbe7ec; border-color: #cbe7ec; }
.solution-tabs button[aria-selected="true"] span { color: #28667a; }
.solution-tabs button:hover { border-color: #99d6df; }
.content-section :is(button,a,input,textarea,select,summary):focus-visible { outline: 3px solid #ea8a48; outline-offset: 4px; }
.solution-panel { display: grid; grid-template-columns: 1.15fr 1fr; gap: 56px; padding: 38px; margin-top: 16px; border: 1px solid #477180; border-radius: 24px; background: rgba(1,24,35,.2); }
.solution-panel[hidden] { display: none; }
.solution-copy h3 { max-width: 560px; font-size: clamp(1.6rem,2.4vw,2.15rem); letter-spacing: -.025em; }
.solution-copy > p:not(.eyebrow) { color: #c1d5db; line-height: 1.75; }
.solution-result { display: grid; gap: 8px; margin-top: 30px; padding-top: 20px; border-top: 1px solid #42697b; }
.solution-result > span { color: #9cbec9; font-size: .875rem; }
.solution-result strong { font-size: 1rem; font-weight: 550; line-height: 1.6; }
.solution-aside h4 { margin: 0 0 12px; font-size: 1rem; }
.solution-aside ul { padding-left: 20px; margin: 0 0 18px; color: #c1d5db; }
.solution-aside li + li { margin-top: 6px; }
.solution-links { display: grid; justify-items: start; margin-bottom: 24px; }
.solution-links .content-link { padding-block: 6px; }
.solution-links .content-link span { color: #99d6df; }
.company-story { display: grid; grid-template-columns: 1fr 1.15fr; gap: 64px; }
.company-story h2 { max-width: 500px; margin: 0; font-size: clamp(1.9rem,3vw,2.8rem); line-height: 1.16; }
.company-story-copy > p:first-child { margin-top: 0; font-size: 1.15rem; }
.company-story-copy > p { color: #34535d; line-height: 1.8; }
.company-directions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.company-directions span { padding: 6px 12px; border: 1px solid #99b8c3; border-radius: 99px; font-size: .875rem; }
.service-row { display: grid; grid-template-columns: 40px 1fr 1.4fr .95fr; align-items: start; gap: 24px; padding: 28px 0; }
.service-number { color: #447281; font: 600 .875rem ui-monospace,monospace; padding-top: 3px; }
.service-row h3 { margin: 0; font-size: 1.25rem; }
.service-row p { margin: 0; color: #42616b; }
.service-outcome { color: #175267; padding-left: 16px; border-left: 2px solid #3d91a3; font-size: .925rem; font-weight: 600; }
.workflow-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.workflow-cards article { padding: 30px; border: 1px solid #a2c1ca; border-radius: 22px; background: rgba(255,255,255,.36); }
.workflow-cards article > span { color: #356977; font-size: .8rem; font-weight: 750; letter-spacing: .05em; }
.workflow-cards h3 { margin: 22px 0 12px; font-size: 1.45rem; }
.workflow-cards p { margin-bottom: 16px; color: #42616b; }
.workflow-cards .content-link { display: flex; width: fit-content; font-size: .95rem; }
.selection-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 26px; }
.selection-grid article { padding-top: 20px; border-top: 2px solid #4c94a5; }
.selection-grid span { font: 600 .875rem ui-monospace,monospace; color: #376e7e; }
.selection-grid h3 { font-size: 1.25rem; margin: 22px 0 12px; }
.selection-grid p { color: #42616b; }
.faq-list { max-width: 920px; border-top: 1px solid #9dbbc4; }
.faq-list details { border-bottom: 1px solid #9dbbc4; }
.faq-list summary { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 22px 0; cursor: pointer; list-style: none; font-size: 1.1rem; font-weight: 600; line-height: 1.5; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: #1c647c; font-size: 1.5rem; line-height: 1; transition: transform .15s; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { max-width: 780px; padding-right: 40px; margin: 0 0 24px; color: #42616b; }
.brief-section { color: #dfedf2; background: linear-gradient(130deg,#062b3b,#0d4a61); }
.brief-section .section-heading > p { color: #b9d0da; }
.project-brief { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
.brief-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-content: start; }
.brief-fields label { display: grid; align-content: start; gap: 9px; font-size: .9rem; font-weight: 550; }
.brief-fields input,.brief-fields select,.brief-fields textarea,.brief-preview textarea { display: block; width: 100%; min-width: 0; padding: 12px 14px; border: 1px solid #668c9d; border-radius: 12px; color: #0a2d3b; background: #e7f0f4; font-family: inherit; font-weight: 400; font-size: 1rem; line-height: 1.55; }
.brief-fields input::placeholder,.brief-fields textarea::placeholder { color: #5f747d; opacity: 1; }
.brief-fields select { min-height: 51px; }
.brief-fields textarea,.brief-preview textarea { resize: vertical; }
.brief-wide { grid-column: 1 / -1; }
.brief-preview { min-width: 0; padding: 25px; border: 1px solid #537e91; border-radius: 22px; background: rgba(1,20,34,.25); }
.brief-preview .eyebrow { margin-bottom: 16px; }
.brief-preview textarea { min-height: 252px; color: #d8e6ed; background: #072c3e; border-color: #547786; font-size: .95rem; }
.brief-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.brief-actions .button { padding-inline: 18px; font-size: .9rem; cursor: pointer; }
.brief-note { margin: 16px 0 0; color: #a8c5d3; font-size: .875rem; line-height: 1.6; }
.brief-status { min-height: 1.6em; margin-bottom: 0; color: #cbe9f1; font-size: .9rem; }
.project-brief:not([data-enhanced]) .brief-preview { display: none; }
.project-brief noscript { grid-column: 1 / -1; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.company-anchors { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 24px; }
.company-anchors a { color: #bfe0e7; font-size: .9rem; text-underline-offset: 5px; }
@media (max-width: 1000px) {
  .solution-tabs { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .solution-panel { gap: 28px; padding: 28px; }
  .service-row { grid-template-columns: 30px 1fr 1.6fr; }
  .service-outcome { grid-column: 3; margin-top: -8px; }
  .project-brief { gap: 24px; }
  .brief-fields { grid-template-columns: 1fr; }
}
@media (max-width: 780px) {
  .atlas-site .content-section { padding-block: 58px; }
  .partner-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .review-card,.company-story,.project-brief { grid-template-columns: 1fr; gap: 28px; }
  .review-card { padding: 26px; }
  .solution-panel { grid-template-columns: 1fr; gap: 28px; }
  .solution-aside { border-top: 1px solid #42697b; padding-top: 24px; }
  .solution-tabs button { min-height: 64px; }
  .company-story { gap: 26px; }
  .service-row { grid-template-columns: 28px 1fr; gap: 12px 18px; }
  .service-row p,.service-outcome { grid-column: 2; }
  .service-outcome { margin-top: 4px; }
  .workflow-cards { grid-template-columns: 1fr; }
  .selection-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 24px; }
  .brief-fields { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 500px) {
  .partner-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .partner-card { padding: 18px 12px; }
  .partner-logo { height: 68px; }
  .partner-card span { font-size: .875rem; }
  .solution-tabs button { gap: 8px; padding: 12px; font-size: .875rem; }
  .solution-tabs button span { display: none; }
  .solution-panel { padding: 23px 20px; border-radius: 18px; }
  .review-card { padding: 24px 20px; }
  .brief-fields,.letters-grid { grid-template-columns: 1fr; }
  .brief-preview { padding: 20px; }
  .brief-actions .button { width: 100%; }
  .selection-grid { gap: 12px 18px; }
  .selection-grid h3 { font-size: 1.1rem; }
  .section-action { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) { .faq-list summary span { transition: none; } }
