/* The accepted field-atlas direction, scoped to the product homepage. */
.homepage {
  --home-muted: #526159;
  --home-section-space: clamp(56px, 7vw, 96px);
  --home-gutter: max(24px, calc((100% - var(--content)) / 2));
}
.homepage .home-section { padding: var(--home-section-space) var(--home-gutter); }
.homepage .site-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 7px; }
.homepage .site-nav a { min-height: 44px; display: inline-flex; align-items: center; }
.homepage .hero-actions .button { min-height: 46px; }
.homepage .home-section h2 { margin: 0; color: var(--teal-dark); font-size: clamp(29px, 3.1vw, 42px); line-height: 1.15; letter-spacing: -.025em; }
.homepage .home-section p { color: var(--home-muted); }
.homepage .home-section .eyebrow { color: var(--teal); letter-spacing: .07em; }
.homepage .section-heading { margin-bottom: 40px; }
.homepage .home-link { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; color: var(--teal-dark); font-size: 14px; font-weight: 700; text-underline-offset: 5px; }
.homepage .home-link:hover { color: var(--teal); }
.inventory-coverage { display: grid; grid-template-columns: 1fr 1.1fr; align-items: start; gap: 64px; }
.coverage-list article { display: grid; grid-template-columns: 116px minmax(0, 1fr); gap: 20px; border-top: 1px solid var(--line); padding: 24px 0; }
.coverage-list article:first-child { border-top-color: var(--teal-dark); }
.coverage-label { padding-top: 5px; color: var(--teal); font-size: 10px; font-weight: 750; letter-spacing: .06em; }
.coverage-list h3 { margin: 0; font-size: 20px; line-height: 1.4; }
.coverage-list p { margin: 10px 0 0; font-size: 14px; }
.home-workflow { background: var(--surface); border-top: 1px solid var(--line); }
.workflow-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; margin: 0; padding: 0; list-style: none; }
.workflow-steps li { border-top: 1px solid var(--line); padding-top: 20px; }
.step-number { color: var(--teal); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 12px; }
.workflow-steps h3 { margin: 22px 0 12px; font-size: 21px; }
.workflow-steps p { margin: 0; font-size: 14px; }
.workflow-steps .home-link { margin-top: 16px; }
.homepage .handover-scenarios { border-top: 1px solid var(--line); }
.handover-scenarios .section-heading { max-width: 680px; }
.scenario-list { margin: 0; }
.scenario-list > div { display: grid; grid-template-columns: minmax(160px, 1fr) minmax(0, 2fr); gap: 32px; padding: 20px 0; border-top: 1px solid var(--line); }
.scenario-list dt { font-size: 18px; font-weight: 700; color: var(--teal-dark); }
.scenario-list dd { margin: 0; color: var(--home-muted); font-size: 16px; }
.homepage .handover-scope { margin: 24px 0 0; max-width: 80ch; font-size: 14px; }
.home-privacy { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; background: var(--mint); }
.home-privacy > div > p:not(.eyebrow) { max-width: 470px; margin: 24px 0 16px; }
.privacy-facts dl { margin: 0; }
.privacy-facts dl > div { display: flex; justify-content: space-between; gap: 20px; border-bottom: 1px solid #b8cdbf; padding: 15px 0; font-size: 14px; }
.privacy-facts dt { color: var(--home-muted); }
.privacy-facts dd { margin: 0; font-weight: 700; text-align: right; }
.privacy-facts p { font-size: 13px; }
.privacy-facts strong { display: block; margin-bottom: 8px; color: var(--teal-dark); }
.homepage .faq-band { display: grid; grid-template-columns: 1fr 1.1fr; gap: 64px; margin: 0; background: var(--surface); }
.homepage .faq-list { gap: 0; }
.homepage .faq-list details { padding: 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; }
.homepage .faq-list summary { padding: 20px 4px; min-height: 48px; }
.homepage .faq-list p { margin: 0 0 24px; padding: 0 4px; font-size: 14px; }
.homepage .download-band { margin: 0; gap: 48px; }
.homepage .download-band h2 { color: var(--surface); }
.homepage .download-band .eyebrow { color: var(--lime); }
.homepage .download-band > div > p:last-child { max-width: 620px; color: #c8d8d3; font-size: 14px; }
.homepage .download-actions { min-width: 260px; gap: 10px; }
.homepage .download-actions .button { width: 100%; min-width: 0; min-height: 46px; }
.homepage .button-outline { border-color: #829e91; background: transparent; color: var(--surface); }
.homepage .button-outline:hover { background: #284e41; }
.homepage .feedback-band { grid-template-columns: 1fr 1fr; gap: 64px; background: var(--canvas); }
.homepage .feedback-band h2 { max-width: 480px; font-size: 28px; }
.homepage .feedback-band p { max-width: 470px; font-size: 14px; }
.feedback-disclosure { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.feedback-disclosure > summary { display: flex; justify-content: space-between; align-items: center; min-height: 64px; cursor: pointer; color: var(--teal-dark); font-weight: 700; list-style: none; }
.feedback-disclosure > summary::-webkit-details-marker { display: none; }
.feedback-disclosure > summary > span { font-size: 24px; font-weight: 400; }
.feedback-disclosure[open] > summary > span { transform: rotate(45deg); }
.homepage .feedback-form { padding: 0 0 24px; border: 0; background: transparent; }
.homepage .feedback-status { min-height: 24px; margin: 0; }
.homepage .feedback-form .button { background: var(--teal-dark); color: var(--surface); cursor: pointer; }
.homepage .feedback-form .button:hover { background: var(--teal); }
.homepage .feedback-form .button:disabled { opacity: .7; cursor: wait; }
.homepage .site-footer nav a { min-height: 44px; display: inline-flex; align-items: center; }
@media (max-width: 960px) {
  .inventory-coverage, .homepage .faq-band { gap: 32px; grid-template-columns: .85fr 1.15fr; }
  .coverage-list article { grid-template-columns: 1fr; gap: 8px; }
  .home-privacy { gap: 40px; }
  .workflow-steps { gap: 24px; }
}
@media (max-width: 700px) {
  .scenario-list > div { grid-template-columns: 1fr; gap: 8px; }
  .homepage .handover-scenarios .section-heading { margin-bottom: 32px; }
  .inventory-coverage, .home-privacy, .homepage .faq-band, .homepage .feedback-band { grid-template-columns: 1fr; gap: 32px; }
  .homepage .section-heading { margin-bottom: 0; }
  .home-workflow .section-heading { margin-bottom: 32px; }
  .workflow-steps { grid-template-columns: 1fr; gap: 28px; }
  .workflow-steps h3 { margin-top: 10px; }
  .homepage .download-actions { min-width: 0; }
}
@media (max-width: 560px) {
  .homepage { --home-gutter: 16px; }
  .homepage .site-nav a { display: none; }
  .homepage .site-nav a[href="/"], .homepage .site-nav a[href="/downloads.html"], .homepage .site-nav a[href="/signin.html"] { display: inline-flex; }
  .homepage .site-nav { gap: 10px; }
}

/* Keep the product name and actual workspace together at every viewport. */
.homepage .hero-layout { width: min(var(--content), calc(100% - 48px)); padding: 64px 0 48px; display: grid; grid-template-columns: 1fr; align-items: center; gap: 28px; }
.homepage .hero-content { max-width: 760px; }
.homepage .hero h1 { font-size: clamp(48px, 6.5vw, 84px); line-height: 1.04; letter-spacing: -.045em; }
.homepage .hero-product { width: 100%; max-width: 1120px; }
.homepage .hero-product img { width: 100%; height: auto; }
.homepage .home-section h2 { font-size: 36px; letter-spacing: 0; }
.homepage .home-section .eyebrow, .homepage .coverage-label { letter-spacing: 0; text-transform: none; }
@media (max-width: 700px) {
  .homepage .hero h1 { font-size: 44px; }
  .homepage .home-section h2 { font-size: 28px; }
}
.homepage .hero-lead { margin-top: 24px; font-size: clamp(22px, 2.5vw, 30px); line-height: 1.35; }
.homepage .hero-copy { max-width: 64ch; font-size: 17px; line-height: 1.7; }
.homepage .hero-actions { gap: 12px; margin-top: 28px; flex-wrap: wrap; }
.homepage .hero-actions .button { font-size: 15px; min-height: 48px; padding-inline: 22px; }
.hero-product { margin: 0; min-width: 0; }
.hero-product img { width: 100%; height: auto; border: 1px solid var(--line); border-radius: var(--radius); }
.hero-product figcaption { margin-top: 12px; color: var(--home-muted); font-size: 13px; }
.hero-product figcaption a { display: inline-flex; align-items: center; min-height: 44px; text-underline-offset: 4px; }
.product-tour { background: var(--surface); border-top: 1px solid var(--line); }
.product-tour .section-heading { max-width: 760px; }
.product-tour .section-heading > p:last-child { color: var(--home-muted); font-size: 15px; }
.tour-layout { display: grid; grid-template-columns: 1.3fr .7fr; gap: 48px; align-items: start; }
.tour-layout figure { margin: 0; min-width: 0; }
.tour-layout img { height: auto; border: 1px solid var(--line); border-radius: var(--radius); }
.tour-layout figcaption { color: var(--home-muted); font-size: 11px; margin-top: 10px; }
.tour-layout figcaption a { display: inline-flex; align-items: center; min-height: 44px; text-underline-offset: 4px; }
.tour-steps { margin: 0; padding-left: 24px; }
.tour-steps li { padding: 0 0 24px 8px; }
.tour-steps li::marker { color: var(--teal); font-weight: 700; }
.tour-steps h3 { margin: 0; color: var(--teal-dark); font-size: 18px; }
.tour-steps p { margin: 8px 0 0; font-size: 14px; }
.manual-boundary { margin: 32px 0 0; padding-top: 24px; border-top: 1px solid var(--line); font-size: 13px; }
@media (max-width: 960px) {
  .homepage .hero-layout { grid-template-columns: 1fr; gap: 32px; padding-block: 40px; }
  .homepage .hero-content { max-width: 700px; }
  .hero-product { max-width: 760px; }
  .tour-layout { grid-template-columns: 1fr; gap: 32px; }
  .tour-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
}
@media (max-width: 560px) {
  .homepage .hero-layout { width: calc(100% - 32px); padding-block: 32px; }
  .homepage .hero h1 { font-size: 48px; }
  .homepage .hero-lead { font-size: 19px; }
  .homepage .site-nav .nav-signin { padding-inline: 0; }
  .tour-steps { grid-template-columns: 1fr; gap: 0; }
}

/* Compact progressive disclosure keeps handover detail available without a long wall of text. */
.resource-path { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0 0 24px; padding: 16px 0; border-block: 1px solid var(--line); color: var(--teal-dark); font-size: 14px; font-weight: 650; }
.resource-path li:not(:last-child)::after { content: "\2192"; margin-left: 8px; color: var(--home-muted); }
.scenario-disclosure { border-block: 1px solid var(--line); }
.scenario-disclosure > summary { padding: 22px 4px; min-height: 48px; cursor: pointer; color: var(--teal-dark); font-size: 18px; font-weight: 650; }
.scenario-disclosure .scenario-list > div:first-child { border-top: 0; }
.homepage a:focus-visible, .homepage summary:focus-visible { outline: 3px solid var(--teal); outline-offset: 5px; border-radius: 3px; }
@media (prefers-reduced-motion: reduce) { .homepage *, .homepage *::before, .homepage *::after { scroll-behavior: auto !important; transition: none !important; } }

/* Alternate reading surfaces; reserve lines for actual controls and tables. */
.homepage .inventory-coverage { background: #ffffff; }
.homepage .handover-scenarios { background: #edf2ed; border-top: 0; }
.homepage .home-workflow { background: #ffffff; border-top: 0; }
.homepage .home-privacy { background: #e3ede6; }
.homepage .faq-band { background: #ffffff; }
.homepage .feedback-band { background: #ffffff; padding-block: 48px; }
.homepage .site-footer { background: var(--canvas); }
.homepage .feedback-disclosure { border: 0; }
.homepage .resource-path { border: 0; padding-top: 0; }
.homepage .coverage-list article { border-top: 0; padding-block: 18px; }
.homepage .scenario-disclosure { border: 0; }
.homepage .download-band { background: #e3ede6; }
.homepage .download-band h2 { color: var(--teal-dark); }
.homepage .download-band .eyebrow { color: var(--teal); }
.homepage .download-band > div > p:last-child { color: var(--home-muted); }
.homepage .download-band .button-light { background: var(--teal-dark); color: #fff; }
.homepage .download-band .button-outline { color: var(--teal-dark); background: #fff; border-color: #91a79a; }
.homepage .download-band .button-outline:hover { background: #f1f3ed; }

/* One primary lookup journey; secondary capabilities stay available on demand. */
.homepage .capability-disclosure > summary { cursor: pointer; min-height: 48px; padding: 16px 0; font-size: clamp(20px, 2vw, 26px); color: var(--teal-dark); font-weight: 650; }
.homepage .capability-disclosure[open] > summary { margin-bottom: 28px; }
.homepage .inventory-coverage, .homepage .home-workflow, .homepage .handover-scenarios { padding-block: 24px; }
.connection-example { background: #edf2ed; }
.connection-example figure { margin: 32px 0 0; }
.connection-example img { width: 100%; height: auto; border: 1px solid var(--line); border-radius: var(--radius); }
.connection-example figcaption { color: var(--home-muted); font-size: 13px; margin-top: 12px; }
.connection-example figcaption a { display: inline-flex; align-items: center; min-height: 44px; }
.website-account-note { margin: 0; padding: 24px max(24px, calc((100% - 1200px) / 2)); background: var(--canvas); color: var(--home-muted); font-size: 14px; }
.website-account-note a { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 560px) {
  .connection-example figure { overflow: auto; border: 1px solid var(--line); border-radius: var(--radius); }
  .connection-example img { width: 760px; max-width: none; border: 0; }
  .connection-example figcaption { padding: 0 12px; }
  .hero-product picture { display: block; }
}

.homepage .inventory-coverage > .capability-disclosure { grid-column: 1 / -1; min-width: 0; }

.mobile-crop-note { display: none; }
@media (max-width: 560px) { .mobile-crop-note { display: inline; } }
