/* Scoped entry points for the existing homepage and Products directory. */
.service-entry{color:var(--ink);background:var(--bg)}
.service-entry-heading{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:38px}
.service-entry-heading h2{font-size:clamp(32px,4vw,52px);line-height:1.08;letter-spacing:-.04em;margin:12px 0 0}
.service-entry-heading p{max-width:46ch;color:var(--muted)}
.service-entry-link{display:inline-block;font-weight:650;text-underline-offset:5px;padding:8px 0}
.service-entry .service-entry-status{font-size:12px;margin:10px 0 0}
.service-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.service-entry-card{display:block;position:relative;padding:25px 26px 42px;border:1px solid var(--line);border-radius:var(--radius,11px);background:var(--bg-soft);color:var(--ink);text-decoration:none;min-width:0;transition:border-color .15s}
.service-entry-card:hover{border-color:var(--accent)}
.service-entry-card:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.service-entry-number{font-size:11px;color:var(--muted);letter-spacing:.1em}
.service-entry-card h3{font-size:22px;line-height:1.2;letter-spacing:-.025em;margin:18px 0 10px}
.service-entry-card p{font-size:15px;line-height:1.55;color:var(--muted);margin:0;max-width:32ch}
.service-entry-arrow{position:absolute;bottom:14px;right:22px;font-size:21px}
@media(max-width:850px){.service-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-entry-heading{gap:25px}}
@media(max-width:580px){.service-entry-heading,.service-entry-grid{grid-template-columns:1fr}.service-entry-heading{gap:12px}.service-entry-card{padding:20px 22px 35px}.service-entry-card h3{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.service-entry-card{transition:none}}

/* Six homepage offers with descriptions and independent actions. */
body.material-home{min-width:0}
.material-home .hero{min-height:calc(100svh - 102px);padding:40px 0;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:40px}
.material-home .hero h1{font-size:clamp(36px,3.1vw,48px);line-height:1.08;letter-spacing:-.035em;min-height:0}
.material-home .hero-topic .hero-copy{min-height:0;margin:22px 0 0;font-size:19px;line-height:1.5}
.material-home .hero-message .hero-actions{margin-top:28px}
.material-home .service-directory{display:block;min-height:0;width:100%;padding:0;place-items:initial}
.service-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.service-directory-card{display:flex;min-width:0;aspect-ratio:1;flex-direction:column;padding:18px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--ink);transition:background-color .18s,border-color .18s,transform .18s}
.service-directory-card:hover,.service-directory-card:focus-within{border-color:var(--accent);background:var(--surface-raised);transform:translateY(-3px)}
.service-directory-card h3{margin:0 0 8px;min-height:2.1em;font-size:clamp(26px,2.15vw,32px);line-height:1.05;letter-spacing:-.03em;overflow-wrap:break-word}
.service-directory-card:nth-child(n+4) h3{min-height:3.15em}
.service-directory-description{margin:0 0 8px;color:var(--muted);font-size:14px;line-height:1.4}
.service-directory-actions{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;border-top:1px solid var(--line);flex-wrap:wrap}
.service-directory-actions a{display:inline-flex;align-items:center;min-height:32px;padding:2px 0;color:var(--accent);font-size:13px;font-weight:650;text-decoration:none;text-underline-offset:4px;border-radius:2px}
.service-directory-actions .card-action-primary{color:var(--ink)}
.service-directory-actions a:hover{text-decoration:underline}
.service-directory-actions a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:1200px) and (min-width:701px){.service-directory-card{padding:14px}.service-directory-card h3{font-size:24px;margin-bottom:6px}.service-directory-description{font-size:13px;line-height:1.4;margin-bottom:6px}.service-directory-actions{gap:6px;padding-top:5px}.service-directory-actions a{font-size:12px;min-height:30px}}
@media(max-width:1050px){.material-home .hero{min-height:0;grid-template-columns:1fr;padding:28px 0 48px;gap:28px}.material-home .hero h1{font-size:48px}.material-home .hero-message .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.material-home .service-directory{max-width:none;margin:0}}
@media(max-width:700px){.material-home .hero h1{font-size:40px}.material-home .hero-message .microcopy{display:none}.material-home .hero-copy{font-size:18px}.service-directory-grid{grid-template-columns:1fr;gap:12px}.service-directory-card{padding:24px}.service-directory-card h3{font-size:32px;min-height:0}.service-directory-card:nth-child(n+4) h3{min-height:0}.service-directory-description{font-size:16px;line-height:1.45}.service-directory-actions a{min-height:44px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.service-directory-card{transition:none}.service-directory-card:hover,.service-directory-card:focus-within{transform:none}}

/* Restore the original paper stack with the current product and service offers. */
.material-home .hero{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:64px}
.material-home .offer-stack{min-height:0;display:grid;align-content:center;justify-items:center;gap:26px;padding:16px 0;width:100%;min-width:0}
.material-home .offer-stack .record-stack{width:min(100%,530px);padding-top:24px;perspective:1000px}
.offer-stack .record-leaf{border-color:var(--line-strong);box-shadow:0 16px 32px rgba(0,0,0,.12)}
.offer-stack .leaf-source{width:86%;height:88%;top:4%;left:5%;transform:rotate(-5deg);background:var(--surface-deep)}
.offer-stack .leaf-memory{width:86%;height:88%;top:5%;left:10%;transform:rotate(4deg);background:var(--surface-raised)}
.material-home .offer-stack .record-front{left:4%;width:92%;min-height:440px;padding:26px 30px 18px;background:var(--surface);color:var(--ink);border-color:var(--line-strong)}
.offer-stack .record-head{color:var(--muted);border-color:var(--line);align-items:center}
.offer-stack .record-heading{display:inline-flex;align-items:center;gap:10px}
.offer-stack .overview-mark{filter:none;mask-image:none}
html[data-appearance='light'] .offer-stack .overview-mark{filter:invert(1);mix-blend-mode:multiply}
html[data-appearance='dark'] .offer-stack .overview-mark{filter:none;mix-blend-mode:screen}
.offer-stack .overview-slides{display:block;padding:30px 0 26px}
.offer-stack .overview-slide{display:flex;flex-direction:column;padding:20px 0;border-bottom:1px solid var(--line);gap:0}
.offer-stack .overview-slide h2{font-size:clamp(30px,3vw,42px);line-height:1.08;letter-spacing:-.035em;color:var(--ink);margin:0;max-width:16ch}
.offer-stack .overview-copy{font-size:19px;line-height:1.5;color:var(--muted);margin:20px 0 28px;max-width:34ch}
.offer-stack .overview-links{margin-top:auto;justify-content:space-between;gap:14px}
.offer-stack .overview-links a{font-size:15px;color:var(--accent);min-height:44px;text-underline-offset:5px}
.offer-stack .overview-links .overview-cta{color:var(--ink)}
.offer-stack .overview-controls,.offer-stack .offer-index{display:none}
.offer-stack .overview-enhanced .overview-slides{display:grid}
.offer-stack .overview-enhanced .overview-slide{grid-area:1/1;padding:0;border:0}
.offer-stack .overview-enhanced .overview-slide[hidden]{display:flex;visibility:hidden;pointer-events:none}
.offer-stack .overview-enhanced .overview-controls{display:flex;border-color:var(--line)}
.offer-stack .overview-controls>button{color:var(--accent);border-color:var(--line-strong);background:transparent}
.offer-stack .overview-controls>button:hover{background:var(--surface-raised)}
.offer-stack .overview-pages button{min-width:26px}
.offer-stack .overview-pages button span{background:var(--line-strong)}
.offer-stack .overview-pages button[aria-pressed='true'] span{background:var(--accent)}
.offer-stack:has(.overview-enhanced) .offer-index{display:flex;flex-wrap:wrap;justify-content:center;gap:2px 6px;max-width:550px}
.offer-stack .offer-index button{padding:8px 10px;min-height:40px;border:0;border-radius:5px;background:transparent;color:var(--muted);font:inherit;font-size:12px;line-height:1.4;cursor:pointer}
.offer-stack .offer-index button:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.offer-stack .offer-index button[aria-pressed='true']{background:var(--surface-raised);color:var(--ink)}
.offer-stack :is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.offer-stack [data-overview-live]{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1050px){.material-home .hero{grid-template-columns:1fr;gap:26px}.material-home .offer-stack{max-width:580px;justify-self:center}.material-home .hero-message{max-width:680px}.material-home .offer-stack .record-front{min-height:430px}}
@media(max-width:480px){.material-home .offer-stack{padding-top:0;gap:20px}.material-home .offer-stack .record-stack{padding-top:18px;width:100%}.material-home .offer-stack .record-front{left:3%;width:94%;padding:20px 20px 14px;min-height:410px}.offer-stack .overview-slide h2{font-size:30px}.offer-stack .overview-copy{font-size:17px;margin-top:16px}.offer-stack .overview-links a{font-size:14px}.offer-stack .overview-pages{display:none}.offer-stack .overview-controls>button{width:44px;height:44px}.offer-stack .offer-index button{font-size:12px;padding:8px;min-height:44px}.offer-stack .overview-slides{padding:24px 0}}
@media(prefers-reduced-motion:reduce){.offer-stack *{scroll-behavior:auto}}

/* Paper stays warm and light in either page theme. */
.material-home .offer-stack .record-front{
 --surface:#FFFDF5;--surface-raised:#E4E6D9;--ink:#233127;--muted:#596457;--accent:#153C29;
 --line:#D1D4C5;--line-strong:#8B9483;--paper:#FFFDF5;--paper-ink:#233127;--paper-muted:#596457;--paper-link:#153C29;
 background-color:#FFFDF5;
 background-image:repeating-linear-gradient(0deg,rgba(68,58,34,.025) 0,rgba(68,58,34,.025) 1px,transparent 1px,transparent 5px);
 box-shadow:0 2px 3px rgba(0,0,0,.08),0 20px 40px rgba(0,0,0,.2);
}
html[data-appearance] .material-home .offer-stack .leaf-source{background:#E7E6D9;border-color:#8B9483}
html[data-appearance] .material-home .offer-stack .leaf-memory{background:#E4E6D9;border-color:#8B9483}
html[data-appearance] .material-home .offer-stack .overview-mark{filter:invert(1);mix-blend-mode:multiply}
