/* Scoped product overview. Shared navigation styles remain in /css/guides.css. */
.product-page { --ink:#132c2d; --muted:#526566; --teal:#0c7065; --border:#d9e3e1; margin:0; background:#fff; color:var(--ink); font-family:Manrope,Arial,sans-serif; font-size:16px; line-height:1.75; -webkit-font-smoothing:antialiased; }
.product-page *, .product-page *::before, .product-page *::after { box-sizing:border-box; }
.product-page h1,.product-page h2,.product-page h3,.product-page p,.product-page figure { margin:0; }
.product-page h1,.product-page h2,.product-page h3 { line-height:1.15; letter-spacing:-.04em; }
.product-page h1 { font-size:clamp(2.6rem,4.5vw,4.2rem); font-weight:600; }
.product-page h2 { font-size:clamp(2rem,3.5vw,3rem); font-weight:600; }
.product-page h3 { font-size:1.2rem; line-height:1.4; letter-spacing:-.02em; }
.product-page em { font-family:'Instrument Serif',Georgia,serif; font-weight:400; }
.product-page p { color:var(--muted); }
.product-page p + p { margin-top:1rem; }
.product-page a { color:inherit; text-underline-offset:.25em; }
.product-page a:hover { text-decoration-thickness:2px; }
.product-page a:focus-visible,.product-page summary:focus-visible { outline:3px solid #0c7065; outline-offset:5px; }
.product-page img { display:block; max-width:100%; height:auto; }
.product-page section[id],.product-page [id] { scroll-margin-top:2rem; }
.product-wrap { width:min(100% - 3rem,76rem); margin-inline:auto; }
.product-page .eyebrow { margin-bottom:1.1rem; color:var(--teal); font-size:.75rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.product-page .section-note { margin-top:1.1rem; font-size:.8125rem; color:#5a6d6b; line-height:1.7; }
.product-header { border-bottom:1px solid var(--border); background:#fff; }
.header-inner { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding-block:1.1rem; }
.product-page .brand { display:inline-flex; align-items:center; gap:.7rem; color:var(--ink); font-size:.95rem; font-weight:800; letter-spacing:-.02em; text-decoration:none; }
.brand img { width:2.4rem; padding:.2rem; border:1px solid var(--border); border-radius:.6rem; }
.product-header nav { display:flex; flex-wrap:wrap; gap:1.5rem; font-size:.8125rem; font-weight:600; }
.product-header nav a { text-decoration:none; }
.product-header nav a:hover { color:var(--teal); }
.product-page .button { display:inline-flex; align-items:center; justify-content:center; gap:1.5rem; min-height:48px; padding:.8rem 1.3rem; border-radius:.5rem; background:var(--ink); color:#fff; font-size:.875rem; font-weight:700; text-decoration:none; transition:background .15s; }
.product-page .button:hover { background:#205051; }
.product-page .button-small { min-height:42px; padding:.65rem 1rem; font-size:.8125rem; }
.product-page .text-link { color:var(--teal); font-size:.875rem; font-weight:700; }
.actions { display:flex; flex-wrap:wrap; align-items:center; gap:1.5rem; margin-top:1.8rem; }
.skip-link { position:fixed; top:-8rem; left:1rem; padding:.75rem 1rem; z-index:100; background:#fff; }
.skip-link:focus { top:1rem; }
.product-hero { background:linear-gradient(120deg,#f9faf7,#edf5f0); border-bottom:1px solid var(--border); }
.hero-layout { display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:4rem; padding-block:2.5rem 3.5rem; }
.hero-copy .oryon-breadcrumb { font-size:.75rem; margin-bottom:2rem; }
.product-page .hero-deck { max-width:35rem; font-size:1.0625rem; line-height:1.9; margin-top:1.5rem; }
.product-page .hero-audience { margin-top:1.25rem; font-size:.8125rem; }
.hero-facts { display:flex; flex-wrap:wrap; gap:.65rem 1.5rem; list-style:none; padding:1.5rem 0 0; margin:1.5rem 0 0; border-top:1px solid #cfdcd6; color:#3e5b56; font-size:.75rem; font-weight:600; }
.hero-visual { padding:1.25rem 1.5rem; background:rgba(255,255,255,.65); border:1px solid #d5e2da; border-radius:1.5rem; }
.visual-label { display:flex; align-items:center; gap:.5rem; font-size:.75rem; font-weight:700; }
.visual-label > span:last-child { margin-left:auto; color:var(--muted); font-weight:500; }
.status-dot { width:.4rem; height:.4rem; border-radius:50%; background:var(--teal); }
.hero-phone { width:min(100%,16rem); margin:1.25rem auto; border:1px solid #d5dfda; border-radius:1.2rem; overflow:hidden; box-shadow:0 16px 30px #162e2420; }
.product-page .visual-note { text-align:center; font-size:.75rem; }
.lifecycle { padding-block:4.5rem; }
.section-intro { margin-bottom:2rem; }
.lifecycle-grid,.signature-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
.lifecycle-grid > div { border-top:1px solid var(--border); padding-top:1.5rem; }
.step-index { display:block; color:var(--teal); font-size:.6875rem; font-weight:800; letter-spacing:.1em; margin-bottom:.75rem; }
.lifecycle-grid p,.signature-steps p { margin-top:.8rem; font-size:.9375rem; }
.capture-section { padding-block:5rem; background:#f4f7f4; border-block:1px solid var(--border); }
.capture-layout { display:grid; grid-template-columns:.95fr 1.1fr; gap:4rem; align-items:center; }
.section-copy > p:not(.eyebrow) { margin-top:1.1rem; }
.feature-note { display:grid; grid-template-columns:4.5rem 1fr; gap:1rem; padding-block:1.25rem; border-bottom:1px solid var(--border); }
.feature-note span { color:var(--teal); font-weight:800; font-size:.8125rem; }
.feature-note p { font-size:.9375rem; }
.phone-pair { display:grid; grid-template-columns:1fr 1fr; gap:1rem; align-items:start; }
.product-page .product-figure { border:1px solid var(--border); background:white; border-radius:1rem; min-width:0; }
.image-link { display:block; border-radius:inherit; }
.image-link img { width:100%; border-radius:1rem 1rem 0 0; }
.image-link:hover { box-shadow:0 0 0 2px #b6d4c9; }
.product-figure figcaption { border-top:1px solid var(--border); padding:.85rem 1rem; color:var(--muted); font-size:.75rem; line-height:1.65; }
.phone-figure figcaption { padding:.8rem; }
.product-page .pair-caption { grid-column:1/-1; text-align:center; margin:0; font-size:.8125rem; }
.product-section { padding-block:5rem; }
.section-heading { display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:end; margin-bottom:2.5rem; }
.section-heading > p { max-width:34rem; }
.report-layout { display:grid; grid-template-columns:1.7fr 1fr; gap:2rem; align-items:start; }
.report-main .image-link { padding:.75rem; }
.report-main .image-link img { border-radius:.5rem; }
.report-cover .image-link { padding:.75rem; }
.report-cover img { border-radius:.5rem; }
.report-main > p,.report-cover > p { margin-top:1rem; font-size:.9375rem; }
.report-legend { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.1rem; }
.report-legend span { padding:.3rem .7rem; border-radius:2rem; background:#edf5f1; color:var(--teal); font-size:.75rem; font-weight:700; }
.dashboard-section { background:#f3f6fa; border-block:1px solid #dfe6ed; }
.calendar-figure .image-link { padding:.75rem; }
.calendar-figure img { border-radius:.5rem; }
.activity-layout { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:4rem; margin-top:2.5rem; }
.activity-layout h3 { font-size:1.5rem; }
.activity-layout p { margin-top:1rem; }
.activity-figure { width:min(100%,31rem); justify-self:end; }
.signature-steps { margin-bottom:2rem; gap:2.5rem; }
.signature-images { display:grid; grid-template-columns:1fr; gap:1.5rem; }
.signature-images .product-figure { width:100%; }
.addendum-section { display:grid; grid-template-columns:1.4fr 1fr; gap:4rem; padding:3rem; border-radius:1.25rem; background:#edf5f0; border:1px solid #cbded1; }
.addendum-section p { margin-top:1rem; }
.addendum-section .text-link { display:inline-block; margin-top:1.5rem; }
.addendum-example { border-left:1px solid #c8d9cd; padding-left:2.5rem; align-self:center; }
.addendum-example h3 { font-size:1.5rem; }
.faq-section { display:grid; grid-template-columns:1fr 1.5fr; gap:4rem; }
.faq-section > div > p:not(.eyebrow) { margin-top:1.5rem; }
.faq-list details { border-bottom:1px solid var(--border); padding-block:1.2rem; }
.faq-list details:first-child { border-top:1px solid var(--border); }
.faq-list summary { cursor:pointer; font-size:.9375rem; font-weight:700; padding-right:.5rem; }
.faq-list p { margin-top:1rem; font-size:.9375rem; }
.resource-section { padding-block:0 4rem; }
.resource-section > div:first-child { max-width:42rem; margin-bottom:2rem; }
.resource-section > div:first-child > p:last-child { margin-top:1rem; }
.product-page .comparison-link { padding-top:1.5rem; font-size:.8125rem; }
.closing-cta { padding-block:4.5rem; background:#132c2d; color:#fff; }
.closing-cta h2 { font-size:clamp(2.5rem,5vw,4rem); }
.closing-cta .eyebrow { color:#9ed6bc; }
.closing-cta p:not(.eyebrow) { color:#cad8d4; max-width:40rem; margin-top:1.25rem; }
.product-page .button-light { background:#e0f5e9; color:#132c2d; }
.product-page .button-light:hover { background:#fff; }
.closing-cta .text-link { color:#e0f5e9; }
.product-footer { background:#f9faf8; }
.footer-inner { display:flex; justify-content:space-between; align-items:start; gap:3rem; padding-block:2.5rem; }
.product-footer p { margin-block:.5rem; font-size:.8125rem; }
.product-footer small { font-size:.75rem; color:var(--muted); }
.product-footer nav { display:flex; gap:1rem 1.5rem; flex-wrap:wrap; max-width:30rem; font-size:.8125rem; }
@media (max-width:1050px) {
 .hero-layout,.capture-layout { gap:2.5rem; }
 .section-heading,.activity-layout,.faq-section { gap:2rem; }
 .product-header nav { gap:1rem; }
 .product-page h1 { font-size:3.1rem; }
 .hero-visual { padding:1rem; }
}
@media (max-width:800px) {
 .header-inner { flex-wrap:wrap; gap:1rem; }
 .product-header nav { order:3; width:100%; justify-content:center; padding-top:.5rem; border-top:1px solid var(--border); }
 .hero-layout,.capture-layout,.section-heading,.activity-layout,.faq-section,.addendum-section { grid-template-columns:1fr; }
 .hero-layout { padding-block:2rem 3rem; }
 .hero-copy { max-width:40rem; }
 .hero-visual { width:min(100%,30rem); justify-self:center; }
 .hero-phone { width:14rem; }
 .lifecycle-grid,.signature-steps { grid-template-columns:1fr; gap:1.5rem; }
 .phone-pair { width:min(100%,36rem); justify-self:center; }
 .section-heading { gap:1.25rem; }
 .activity-figure { justify-self:start; }
 .addendum-example { border-left:0; border-top:1px solid #c8d9cd; padding:1.5rem 0 0; }
 .footer-inner { flex-direction:column; gap:1.5rem; }
}
@media (max-width:540px) {
 .product-wrap { width:calc(100% - 2rem); }
 .product-page h1 { font-size:2.6rem; }
 .product-page .brand { font-size:.85rem; }
 .brand img { width:2rem; }
 .product-page .button-small { font-size:.75rem; padding:.55rem .75rem; }
 .product-page .hero-deck { font-size:1rem; }
 .product-section,.capture-section,.lifecycle { padding-block:3rem; }
 .phone-pair { gap:.65rem; }
 .phone-figure figcaption { padding:.65rem; font-size:.6875rem; }
 .feature-note { grid-template-columns:1fr; gap:.4rem; }
 .report-layout { grid-template-columns:1fr; }
 .report-cover { width:min(100%,25rem); justify-self:center; }
 .addendum-section { padding:1.5rem; }
 .calendar-figure .image-link { padding:.3rem; }
 .product-figure figcaption { font-size:.75rem; }
 .actions { gap:1rem; }
 .closing-cta { padding-block:3rem; }
}
@media print {
 .product-header,.product-footer,.skip-link,.actions,.closing-cta,.comparison-link { display:none!important; }
 .product-page { font:10pt/1.5 Arial,sans-serif; background:#fff; }
 .product-page h1 { font-size:24pt; }
 .product-page h2 { font-size:18pt; }
 .product-wrap { width:100%; }
 .product-section,.lifecycle,.capture-section { padding-block:1.5rem; }
 .hero-layout { grid-template-columns:1fr 1fr; gap:1rem; }
 .hero-phone { width:8rem; }
 .product-figure { break-inside:avoid; }
 .image-link img { max-height:16rem; width:auto; margin-inline:auto; object-fit:contain; }
}
