/* A compact editorial layer for the two inner pages. All content is visible
   without script; the optional entrance motion never changes page geometry. */
.about-editorial-page .about-page { grid-template-columns: 1.05fr 1fr; gap: 8%; padding-block: 64px 78px; }
.about-editorial-page .about-copy, .services-page .page-intro { animation: none; }
.about-visual { position: relative; min-width: 0; padding: 0 32px 70px 0; }
.about-editorial-page .about-figure { transform: rotate(-2deg); }
.about-editorial-page .about-image-frame { border: 1px solid var(--line); border-radius: 16px; }
.about-editorial-page .about-figure img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; object-position: center; }
.about-editorial-page .about-figure figcaption { flex-direction: column; align-items: flex-start; max-width: 44%; font-size: 9px; gap: 2px; }
.about-editorial-page .about-figure figcaption span:last-child { text-align: left; }
.about-editorial-page .photo-hint { top: 20px; right: 20px; bottom: auto; left: auto; }
.about-detail { position: absolute; right: -12px; bottom: 0; width: 51%; padding: 9px 9px 13px; background: var(--paper) url('../assets/texture.webp') center / 600px; color: var(--ink); transform: rotate(5deg); box-shadow: 0 18px 40px rgba(0, 0, 0, .24); }
.about-detail img { width: 100%; height: auto; aspect-ratio: 16 / 11; object-fit: cover; }
.about-detail figcaption { padding: 12px 3px 0; font-size: 8px; line-height: 1.7; letter-spacing: .085em; }
.about-editorial-page .about-intro, .about-editorial-page .biography { font-size: 15px; line-height: 1.8; }
.about-editorial-page .biography { margin-top: 20px; }
.about-interests { width: fit-content; margin-top: 25px; padding-block: 12px; border-block: 1px solid var(--line); color: var(--muted); font-size: 11px; letter-spacing: .045em; }
.about-editorial-page .signature { margin-top: 13px; }
.about-perspective { display: grid; grid-template-columns: 1.05fr 1fr; gap: 8%; align-items: center; margin-bottom: 68px; padding: 40px 44px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
.about-perspective .eyebrow, .coverage-guide .eyebrow { margin-bottom: 16px; }
.about-perspective h2 { font-size: clamp(35px, 3.25vw, 49px); }
.perspective-intro { margin-top: 22px; max-width: 460px; font-size: 15px; line-height: 1.8; color: var(--muted); }
.perspective-heading .text-link { margin-top: 20px; }
.perspective-notes { display: grid; gap: 27px; }
.perspective-note, .coverage-options li { display: flex; align-items: baseline; gap: 21px; }
.editorial-number { flex: 0 0 23px; color: var(--accent); font: italic 21px/1.3 var(--serif); }
.perspective-note h3, .coverage-options h3 { margin: 0 0 9px; color: var(--paper); font: 400 28px/1.16 var(--serif); letter-spacing: -.025em; }
.perspective-note p, .coverage-options p { color: var(--muted); font-size: 15px; line-height: 1.8; }
.perspective-note + .perspective-note { border-top: 1px solid var(--line); padding-top: 27px; }
.package-value-intro { display: grid; grid-template-columns: 1fr 1.1fr; gap: 7%; align-items: center; max-width: 980px; margin: 34px auto 13px; }
.package-value-intro .eyebrow { margin-bottom: 8px; }
.package-value-intro h2 { max-width: 400px; font-size: clamp(30px, 2.65vw, 39px); line-height: 1.1; }
.package-value-intro > p { color: var(--muted); font-size: 15px; line-height: 1.8; }
.coverage-guide { display: grid; grid-template-columns: .9fr 1.1fr; gap: 9%; margin-top: 46px; padding-top: 45px; border-top: 1px solid var(--line); }
.coverage-heading h2 { font-size: clamp(39px, 3.8vw, 56px); }
.coverage-intro { max-width: 380px; margin-top: 20px; color: var(--muted); font-size: 15px; line-height: 1.8; }
.full-value-note { margin-top: 26px; padding: 20px 23px; border-left: 2px solid var(--muted); background: var(--surface); }
.full-value-note .eyebrow { margin-bottom: 7px; font-size: 10px; }
.full-value-note > p:last-child { font-size: 15px; line-height: 1.8; color: var(--muted); }
.full-value-note strong { display: block; margin-bottom: 5px; color: var(--paper); font: 400 39px/1.1 var(--serif); letter-spacing: -.035em; }
.coverage-options { list-style: none; margin: 0; padding: 0; }
.coverage-options li { padding: 21px 0; border-bottom: 1px solid var(--line); }
.coverage-options li:first-child { padding-top: 0; }
.coverage-options li:last-child { padding-bottom: 0; border-bottom: 0; }
.services-page .request-section { margin-top: 44px; }
@media (max-width: 1000px) {
  .about-editorial-page .about-page { gap: 6%; }
  .about-visual { padding-right: 18px; }
  .about-detail { right: -4px; width: 58%; }
  .about-perspective { padding: 32px; gap: 6%; }
  .perspective-note, .coverage-options li { gap: 14px; }
  .about-editorial-page .about-figure figcaption { letter-spacing: .02em; font-size: 8px; }
}
@media (max-width: 700px) {
  .about-editorial-page .about-page { grid-template-columns: 1fr; gap: 42px; padding-block: 40px 50px; }
  .about-visual { padding: 0 18px 52px 0; margin-top: 3px; }
  .about-editorial-page .about-figure { width: 100%; }
  .about-editorial-page .about-figure img { height: auto; aspect-ratio: 1; object-fit: contain; object-position: center; }
  .about-editorial-page .photo-hint { top: 13px; right: 13px; font-size: 9px; }
  .about-detail { right: 0; width: 48%; padding: 7px 7px 9px; }
  .about-detail figcaption { font-size: 7px; letter-spacing: .035em; padding-top: 8px; }
  .about-interests { margin-top: 21px; font-size: 10px; }
  .about-perspective { grid-template-columns: 1fr; gap: 30px; margin-bottom: 45px; padding: 28px 24px; }
  .about-perspective h2 { font-size: clamp(36px, 9vw, 48px); }
  .perspective-intro { margin-top: 18px; }
  .perspective-notes { gap: 22px; }
  .perspective-note + .perspective-note { padding-top: 22px; }
  .package-value-intro { grid-template-columns: 1fr; gap: 16px; margin: 27px 0 10px; }
  .package-value-intro h2 { max-width: 340px; font-size: 34px; }
  .coverage-guide { grid-template-columns: 1fr; gap: 29px; margin-top: 30px; padding-top: 32px; }
  .coverage-intro { max-width: none; }
  .full-value-note { margin-top: 23px; }
  .coverage-options h3 { font-size: 28px; }
  .services-page .request-section { margin-top: 33px; }
}
@media (prefers-reduced-motion: reduce) {
  [data-editorial-enter] { animation: none; }
}

  .about-editorial-page .about-page { grid-template-columns: 1fr; gap: 32px; padding-block: 34px 46px; }
  .about-editorial-page .about-copy { grid-row: 1; }
  .about-editorial-page .about-copy h1 { font-size: clamp(58px, 15vw, 80px); }
  .about-visual { width: min(100%, 560px); margin: 4px auto 0; padding: 0 12px 68px 0; }
  .about-editorial-page .about-figure { transform: rotate(-1.5deg); }
  .about-editorial-page .about-figure img { height: auto; aspect-ratio: 1; object-fit: contain; object-position: center; }
  .about-editorial-page .about-figure figcaption { max-width: 48%; font-size: 9px; letter-spacing: .02em; }
  .about-editorial-page .photo-hint { top: 12px; right: 12px; padding: 9px 11px; font-size: 10px; }
  .about-detail { right: 0; width: 46%; padding: 7px 7px 10px; transform: rotate(4deg); }
  .about-detail figcaption { font-size: 8px; letter-spacing: .015em; }
  .about-perspective { grid-template-columns: 1fr; gap: 30px; margin-bottom: 48px; padding: 28px 24px; }
  .about-perspective h2 { font-size: clamp(36px, 9vw, 48px); }
  .package-value-intro { grid-template-columns: 1fr; gap: 16px; margin: 27px 0 8px; }
  .package-value-intro h2 { max-width: 370px; font-size: 34px; }
  .coverage-guide { grid-template-columns: 1fr; gap: 30px; margin-top: 34px; padding-top: 34px; }
  .coverage-intro { max-width: none; }


/* Only the synchronous About head script can opt into these initial frames.
   Each group releases its pose after WAAPI is installed, or fails open. */
@media (prefers-reduced-motion: no-preference) {
  .about-entry-pending .about-editorial-page [data-about-entry]:not([data-about-entry-settled]) { opacity: 0; }
  .about-entry-pending .about-editorial-page .about-figure[data-about-entry]:not([data-about-entry-settled]) { translate: 0 28px; rotate: 0deg; }
  .about-entry-pending .about-editorial-page .about-detail[data-about-entry]:not([data-about-entry-settled]) { translate: 0 20px; rotate: -2deg; }
  .about-entry-pending .about-editorial-page .about-copy[data-about-entry]:not([data-about-entry-settled]) { translate: 0 32px; }
}
