/* One editorial frame for the whole site. Artwork stays in open spaces;
   working views keep a flat, untextured ground. Hero art is layered after this. */
::selection { background: #d6c9de; color: var(--ink); }
.site-header.is-solid { background: #f6f3edf5; box-shadow: 0 1px 0 var(--line); }
.mobile-menu { background: var(--paper); border: 1px solid var(--line); border-radius: 8px; }
.brand { font-weight: 750; }
.nav__link, .pill, .chip, .tab, .textlink, .link-strong { font-weight: 600; }
.pill--white { box-shadow: none; }
.pill--white:hover { box-shadow: 0 6px 18px #23293614; }
.pill--line { border-width: 1px; }
.chip { background: transparent; }
.chip__mark { border-radius: 5px; }
.tab { border-bottom-width: 2px; }
.select, .person input { background: var(--paper); border-radius: 5px; font-weight: 500; }
.badge { border-radius: 4px; font-weight: 600; }
.sample-tag { border-radius: 3px; font-size: 10px; font-weight: 500; letter-spacing: .07em; }
.bar, .bar > i { border-radius: 2px; }
.bar { background: var(--line-3); }
.util-value { font-family: var(--font-mono); font-size: 19px; font-weight: 500; }

.eyebrow, .th { font-family: var(--font-mono); font-weight: 500; font-size: 10px; letter-spacing: .12em; }
.section-title { font-weight: 650; line-height: 1.04; letter-spacing: -.045em; }
.section-lede { max-width: 660px; }
.section-head__text { gap: 18px; }

/* Browse like an index of objects, with one clear selection. */
.discover { border-bottom: 1px solid var(--line); }
.tile__cover { aspect-ratio: 1.16; border: 1px solid #23293612; border-radius: 6px; background: color-mix(in srgb, var(--cover-bg) 65%, var(--paper)); }
.tile__cover img { width: 33%; height: 38%; }
.tile:hover .tile__cover { transform: translateY(-2px); box-shadow: 0 6px 16px #2329360c; }
.tile[aria-pressed="true"] .tile__cover { box-shadow: 0 0 0 1px var(--ink); }
.tile__name, .tool-detail__name { font-weight: 650; }
.tile__cat { font-size: 12px; }
.rail-arrows .round-btn { background: transparent; color: var(--ink); border: 1px solid var(--line); }
.rail-arrows .round-btn:hover { background: var(--mist); }
.rail-arrows .round-btn:disabled { opacity: .45; }
.tool-detail { border-block: 1px solid var(--line); border-radius: 0; background: none; padding: 26px 0; margin-top: 32px; }
.tool-detail__art { width: 60px; height: 60px; border-radius: 5px; }
.tool-detail__art img { width: 32px; height: 32px; }
.tool-detail__cm p, .tool-detail__use { font-size: 14px; }

/* The management view becomes a sheet on the desk, without stacked cards. */
.manage { background: #eeeae4; }
.estate { padding-top: 0; width: 100%; min-width: 0; }
.estate__backing { display: none; }
.estate__panel { background: #faf8f3; border: 1px solid var(--line); border-radius: 6px; box-shadow: 0 12px 28px #3a302a05; }
.estate__title, .cap__title, .coverage__title { font-weight: 650; }
.estate__kicker { font-family: var(--font-mono); font-size: 10px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.estate__foot { border-radius: 4px; background: #efeae2; }
.tcell--amount { font-family: var(--font-mono); font-size: 13px; font-weight: 500; }
.tcell-tool { font-weight: 600; }
.coverage { margin-top: 80px; }
.coverage__groups { gap: 32px; }
.cov p { font-size: 14px; }

/* Security has the same ink ground as the artwork, with flat evidence rows. */
.security { background: var(--night); padding: 0; }
.security__panel { max-width: calc(var(--content) + 2 * var(--gutter)); padding: var(--section-top) var(--gutter) 72px; border-radius: 0; background: transparent; }
.security__glow { background: radial-gradient(ellipse at 5% 75%, #a4816830, transparent 60%); }
.security__title { font-size: clamp(46px, 4.8vw, 68px); font-weight: 650; line-height: 1.04; white-space: normal; }
.security__lede { font-size: 18px; }
.findings__list { gap: 0; border-top: 1px solid #ffffff30; }
.finding { border: 0; border-bottom: 1px solid #ffffff30; border-radius: 0; background: transparent; padding: 24px 0; }
.finding__kind { font-family: var(--font-mono); font-size: 10px; font-weight: 500; letter-spacing: .09em; }
.finding__title, .pillar h3 { font-weight: 600; }
.finding__detail { color: #ded9df; }
.steps span { height: 2px; border-radius: 0; }
.act { font-weight: 600; background: #f6f3ed; }
.act:hover { background: #ded5e8; }
.approach { margin-top: 42px; }

/* The closing composition is expanded below alongside the other chapters. */
.cta { position: relative; overflow: hidden; isolation: isolate; background: var(--paper); }
.cta__title { font-size: clamp(40px, 5.25vw, 72px); font-weight: 650; line-height: 1.05; }
.cta .section-lede { font-size: 18px; }
.footer { border-top: 1px solid var(--line); }
.footer__nav a { font-weight: 500; }

/* Source notes remain readable documents in the same visual family. */
.methods-page h1, .methods-page h2, .methods-page h3 { font-weight: 650; letter-spacing: -.035em; }
.reference-card { border-radius: 5px; border: 1px solid var(--line); background: #faf8f3; }
.reference-card .price, .scenario-result { font-family: var(--font-mono); font-weight: 500; }
.methods-page .notice { border-width: 1px; }
.methods-page select { background: var(--paper); border: 1px solid var(--line-input); border-radius: 5px; }

/* The geometry belongs to the page, rather than to a collection of cards.
   Large flat colour fields and original stippled forms frame clear content. */
.chapter-art { pointer-events: none; user-select: none; object-fit: contain; }
.discover, .manage, .security, .cta { overflow: clip; }
.discover { padding-top: 80px; }
.discover > .container { position: relative; }
.discover .section-head { min-height: 390px; padding-bottom: 70px; align-items: center; }
.discover .section-head__text { position: relative; max-width: 700px; width: 57%; }
.discover .section-title { font-size: clamp(44px, 4.8vw, 70px); max-width: 650px; }
.discovery-art { position: absolute; width: 580px; height: 500px; right: -155px; top: -145px; transform: rotate(5deg); }
.discover .rail-arrows { position: absolute; right: 0; top: 345px; }
.discover .chip-row { margin-top: 0; }
.discover .rail { margin-top: 28px; }

.manage { background: #e9e8e1; }
.manage__head { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 26px; padding: 0 0 70px; min-height: 390px; }
.manage__head > :not(.chapter-art) { position: relative; width: 56%; max-width: 690px; }
.manage__head .section-title { font-size: clamp(44px, 4.7vw, 68px); }
.manage__head .section-lede { padding: 0; }
.management-art { position: absolute; width: 460px; height: 400px; right: -45px; top: -65px; transform: rotate(-8deg); }
.manage__body { display: flex; flex-direction: column; gap: 24px; margin-top: 0; }
.manage__side { display: contents; }
.estate { order: 2; }
.estate__panel { min-height: 550px; border: 0; border-top: 2px solid var(--ink); border-bottom: 1px solid var(--line); border-radius: 0; box-shadow: none; padding: 32px 0; background: transparent; }
.estate__foot { background: #f6f3ed; }
.manage__cta { order: 3; margin-top: 8px; }
.security__glow { display: none; }
.security-art { width: 400px; height: 290px; object-fit: cover; object-position: center top; margin: 64px 0 -25px -110px; transform: rotate(-18deg); }
.security__panel { overflow: visible; }
.security__copy { overflow: visible; }
.security__grid { align-items: center; }

.cta { align-items: flex-start; text-align: left; min-height: 680px; padding-block: 130px; background: #e9e2ef; }
.cta > :not(.chapter-art) { position: relative; width: 64%; max-width: 820px; }
.cta__title { font-size: clamp(46px, 5.8vw, 84px); }
.cta .br-desktop { display: none; }
.cta__actions { width: auto; }
.closing-art { position: absolute; right: -210px; bottom: -70px; width: 730px; height: 650px; transform: rotate(-18deg); }
.footer { background: var(--paper); }

@media (min-width: 1100px) {
  .caps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); width: 100%; gap: 28px; margin: 0; }
  .cap { padding: 20px 0; border-radius: 0; border-top: 1px solid var(--line); border-bottom: 0; align-content: start; }
  .cap[aria-pressed="true"] { background: transparent; box-shadow: inset 0 2px var(--cobalt); }
  .cap:hover { background: transparent; }
  .cap__title { font-size: 18px; }
  .cap__desc { font-size: 14px; }
}
@media (max-width: 1099px) {
  .discover .section-head { min-height: 330px; padding-bottom: 48px; }
  .discover .section-head__text { width: 60%; }
  .discover .section-title { font-size: 46px; }
  .discovery-art { width: 410px; right: -170px; top: -115px; }
  .discover .rail-arrows { top: 280px; }
  .management-art { width: 330px; right: -100px; top: -10px; }
  .manage__head { min-height: 400px; }
  .manage__head > :not(.chapter-art) { width: 64%; }
  .manage__head .section-title { font-size: 48px; }
  .security-art { display: none; }
  .closing-art { width: 490px; right: -220px; height: 500px; }
  .cta > :not(.chapter-art) { width: 75%; }
  .cta { min-height: 600px; padding-block: 100px; }
}
@media (max-width: 719px) {
  .discover { padding-top: 0; }
  .discovery-art { position: relative; width: 350px; max-width: none; height: 230px; top: auto; right: auto; margin: 0 -85px 16px auto; object-fit: cover; }
  .discover .section-head { min-height: 0; padding-bottom: 30px; }
  .discover .section-head__text { width: 100%; }
  .discover .section-title { font-size: 42px; }
  .discover .br-mobile { display: none; }
  .manage { padding-top: 0; }
  .manage__head { min-height: 0; padding-bottom: 32px; gap: 22px; }
  .management-art { position: relative; top: auto; right: auto; width: 310px; height: 235px; margin: 0 -75px 12px auto; object-fit: cover; }
  .manage__head > :not(.chapter-art) { width: 100%; }
  .manage__head .section-title { font-size: 42px; }
  .estate__panel { min-height: 640px; padding: 22px 0; }
  .estate__foot { padding-inline: 14px; }
  .estate__foot--line { background: transparent; }
  .cta { padding-top: 0; padding-bottom: 72px; min-height: 0; }
  .closing-art { position: relative; width: 390px; height: 230px; right: auto; bottom: auto; margin: 0 -150px 36px auto; object-fit: cover; object-position: center 25%; }
  .cta > :not(.chapter-art) { width: 100%; }
  .cta__title { font-size: 46px; }
  .cta__actions { align-items: stretch; }
}
@media (max-width: 719px) {
  .section-title { font-size: 38px; }
  .tool-detail { padding: 22px 0; }
  .estate__panel { padding: 20px 16px; }
  .coverage { margin-top: 56px; }
  .security__panel { padding-bottom: 52px; }
  .security__lede { font-size: 17px; }
  .finding { padding: 22px 0; }
  .cta .section-lede { font-size: 17px; }
}

/* Remove the rejected synthetic dot-overlay ornaments and their reserved space. */
.discover .section-head { min-height: 0; padding-bottom: 40px; }
.discover .section-head__text { width: 100%; }
.discover .rail-arrows { position: static; }
.manage__head { min-height: 0; }
.manage__head > :not(.chapter-art) { width: 100%; }
.cta { min-height: 0; }
.cta > :not(.chapter-art) { width: 100%; }
@media(max-width:719px) { .discover,.manage,.cta { padding-top: 64px; } }

/* The same print language now frames whole sections, never the data itself. */
.discover { position: relative; isolation: isolate; }
.discover::before { content: ''; position: absolute; z-index: -1; width: 400px; height: 400px; border-radius: 50%; right: -140px; top: -230px; background: #c3c6b1; }
.manage { background: #eee7d9; padding-top: 0; }
.manage__head { isolation: isolate; justify-content: center; min-height: 460px; padding-block: 70px; margin-bottom: 44px; }
.manage__head::before { content: ''; position: absolute; z-index: -1; inset: 0 calc(-1 * var(--gutter)); background: linear-gradient(90deg,#eee7d9 3%,#eee7d9e0 30%,#eee7d900 62%),url('../art/hero-copilot.webp') right 52% / cover; }
.manage__head > :not(.chapter-art) { max-width: 57%; }
.manage__head .section-lede { font-size: 17px; max-width: 530px; }
.manage__body { position: relative; background: #eee7d9; }
.security { position: relative; isolation: isolate; }
.security::before { content: ''; position: absolute; z-index: -1; width: 700px; height: 700px; border-radius: 50%; background: #3b3d50; top: -300px; left: -400px; }
.security .findings, .security .approach { position: relative; }
.cta { background: #eee7d9; min-height: 550px; justify-content: center; padding-block: 90px; }
.cta::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#eee7d9 0%,#eee7d9a0 35%,#eee7d900 70%),url('../art/hero-chatgpt.webp') center / cover; }
.cta > :not(.chapter-art) { width: 58%; }
.cta__title { font-size: clamp(46px,5vw,72px); }
.cta .section-lede { max-width: 480px; }
@media(max-width:1099px) {
 .manage__head > :not(.chapter-art) { max-width: 66%; }
 .manage__head::before { background-position: center, 65% center; }
 .cta > :not(.chapter-art) { width: 66%; }
 .cta::before { background: linear-gradient(90deg,#eee7d9ed 10%,#eee7d9b0 45%,transparent 90%),url('../art/hero-chatgpt.webp') 65% center / cover; }
}
@media(max-width:719px) {
 .discover::before { width: 260px; height: 260px; top: -205px; right: -60px; }
 .manage__head { padding: 64px 0 250px; margin-bottom: 28px; }
 .manage__head > :not(.chapter-art) { max-width: 100%; }
 .manage__head::before { background: linear-gradient(180deg,#eee7d9 0%,#eee7d9 44%,transparent 75%),url('../art/hero-copilot.webp') right bottom / auto 380px no-repeat; }
 .cta { padding-block: 64px 290px; min-height: 0; }
 .cta > :not(.chapter-art) { width: 100%; }
 .cta::before { background: linear-gradient(180deg,#eee7d9 0%,#eee7d9 35%,transparent 70%),url('../art/hero-chatgpt.webp') right bottom / auto 400px no-repeat; }
 .security::before { width: 470px; height: 470px; top: -240px; left: -250px; }
}
@media(min-width:1100px) {
 .cta > :not(.chapter-art) { max-width: 650px; }
 .cta::before { background: linear-gradient(90deg,#eee7d9 0%,#eee7d9e8 38%,#eee7d900 74%),url('../art/hero-chatgpt.webp') center / cover; }
}
@media(max-width:719px) {
 .manage__head::before { background: linear-gradient(180deg,#eee7d9 0%,#eee7d9 54%,transparent 82%),url('../art/hero-copilot.webp') right bottom / auto 380px no-repeat; }
}
