/* Quiet, content-first layouts for the product, support and studio pages. */
.business-identity { margin-block-end:48px; padding:36px; background:var(--soft); border:1px solid var(--line); border-radius:24px; }
.business-identity h2 { margin:0 0 16px; font-size:1.5rem; line-height:1.4; letter-spacing:-.025em; }
.business-identity > p { max-width:780px; margin:0; color:var(--muted); font-size:1rem; line-height:1.8; }
.business-profile { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 36px; margin:28px 0 0; }
.business-profile > div { min-width:0; }
.business-profile dt { margin-block-end:8px; color:var(--muted); font-size:.8125rem; line-height:1.5; }
.business-profile dd { margin:0; color:var(--ink); font-size:1rem; font-weight:600; line-height:1.7; overflow-wrap:anywhere; }
.footer-business { max-width:760px; margin-block-start:22px; font-size:.8125rem; line-height:1.8; }
.footer-business p { margin:0 0 6px; overflow-wrap:anywhere; }
.footer-business .text-link { font-size:.8125rem; min-height:36px; }
.page-shell { width:min(1120px,calc(100% - 48px)); margin-inline:auto; padding-block-end:128px; }
.breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-block:28px 0; color:var(--muted); font-size:.8125rem; }
.breadcrumbs a,.breadcrumbs [aria-current] { padding-block:8px; }
.breadcrumbs [aria-current] { color:var(--ink); }
.breadcrumbs > [aria-hidden] { color:#b0b8c1; }
.page-hero { padding-block:88px 72px; }
.page-hero .eyebrow { margin-block-end:20px; }
.page-title { max-width:920px; margin:0 0 24px; font-size:clamp(2.5rem,4.6vw,3.5rem); font-weight:750; line-height:1.2; letter-spacing:-.045em; text-wrap:balance; }
.page-lead { max-width:700px; margin:0; color:var(--muted); font-size:1.125rem; line-height:1.85; text-wrap:pretty; }
.category-bar { display:flex; flex-wrap:wrap; align-items:center; gap:14px; padding-block:20px; margin-block-end:28px; border-block-start:1px solid var(--line); color:var(--muted); font-size:.875rem; }
.category-bar > span:nth-child(2) { padding:8px 14px; border-radius:12px; background:#eaf3ff; color:#1765cb; font-weight:650; }
.category-bar > span:last-child { margin-inline-start:auto; }

/* Product details */
.detail-intro { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:center; gap:64px; padding-block:68px 88px; }
.detail-intro > *,.detail-title { min-width:0; }
.detail-title .product-meta { margin-block-end:28px; }
.detail-title h1 { margin:0 0 24px; font-size:clamp(2.875rem,4.7vw,4.25rem); line-height:1.08; font-weight:750; letter-spacing:-.055em; }
.detail-title h1 span { display:block; color:#8b95a1; }
.detail-subtitle { margin:0 0 16px; color:var(--ink); font-size:1.375rem; font-weight:650; line-height:1.6; letter-spacing:-.025em; }
.detail-title .page-lead { font-size:1rem; }
.detail-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-block-start:28px; }
.detail-actions > * { max-width:100%; }
.detail-visual { min-height:0; aspect-ratio:1; border-radius:28px; }
.detail-visual strong { font-size:clamp(6rem,11vw,10rem); }
.visual-disclaimer { margin:14px 0 0; color:var(--muted); font-size:.8125rem; line-height:1.7; }
.section-nav { display:flex; flex-wrap:wrap; gap:6px 32px; padding-block:12px; border-block-end:1px solid var(--line); color:var(--muted); font-size:.9375rem; font-weight:600; }
.section-nav a { display:inline-flex; min-height:44px; align-items:center; }
.section-nav a:hover { color:var(--blue); }
.detail-section { padding-block:80px; border-block-end:1px solid var(--line); scroll-margin-top:100px; }
.detail-section h2,.related-section h2 { margin:0 0 32px; color:var(--ink); font-size:clamp(1.875rem,3vw,2.5rem); line-height:1.35; letter-spacing:-.035em; font-weight:700; text-wrap:balance; }
.feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.feature-grid article { min-width:0; padding:28px; border-radius:24px; background:var(--soft); }
.feature-number { display:block; margin-block-end:28px; color:var(--blue); font-size:.875rem; font-weight:700; }
.feature-grid h3,.feature-grid h2 { margin:0 0 14px; font-size:1.25rem; font-weight:700; line-height:1.5; letter-spacing:-.025em; }
.feature-grid p,.detail-section > p,.video-section p { margin:0; color:var(--muted); font-size:1rem; line-height:1.8; text-wrap:pretty; }
.detail-section > p + p { margin-block-start:16px; }
.video-section { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:center; gap:64px; }
.video-section .eyebrow { margin-block-end:18px; }
.video-section h2 { margin-block-end:18px; }
.video-button { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:20px; min-height:270px; padding:32px; border:1px solid #d8e8fc; border-radius:24px; background:#eef5ff; color:#1765cb; font:inherit; font-weight:650; cursor:pointer; }
.video-button:hover { background:#e4efff; border-color:#b3d2fb; }
.large-play { display:grid; place-items:center; width:64px; height:64px; border-radius:50%; color:white; background:var(--blue); font-size:2rem; line-height:1; }
.requirements-section dl { margin:0 0 24px; }
.requirements-section dl > div { display:grid; grid-template-columns:180px minmax(0,1fr); gap:32px; padding-block:24px; border-block-end:1px solid var(--line); }
.requirements-section dt { color:var(--muted); font-size:.9375rem; }
.requirements-section dd { margin:0; color:var(--ink); font-size:1rem; line-height:1.75; }
.requirements-section .text-link { margin-block-start:20px; }
.purchase-panel,.contact-panel,.development-panel { margin-block:64px; padding:48px; border:1px solid #e2ecfa; border-radius:28px; background:#f2f7ff; scroll-margin-top:100px; }
.purchase-panel h2,.contact-panel h2,.development-panel h2 { margin:0 0 20px; font-size:clamp(1.875rem,3vw,2.5rem); font-weight:700; line-height:1.4; letter-spacing:-.035em; text-wrap:balance; }
.purchase-panel p,.contact-panel p,.development-panel p { max-width:760px; color:var(--muted); font-size:1rem; line-height:1.85; }
.development-panel { background:var(--soft); border-color:var(--line); }
.development-panel .status { display:inline-block; margin-block-end:24px; }
.related-section { padding-block-start:20px; }
.related-section > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.related-section a { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; padding-block:26px; border-block:1px solid var(--line); }
.related-section a > span:first-child { color:var(--ink); font-size:1.25rem; font-weight:650; letter-spacing:-.025em; overflow-wrap:anywhere; }

/* Support: actual guide links, native FAQ disclosure and visible contact options. */
.section-intro { max-width:740px; }
.docs-mirror-note { margin-block-start:20px !important; font-size:.875rem !important; }
.guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-block-start:36px; }
.guide-card { min-width:0; display:flex; flex-direction:column; padding:30px; border:1px solid var(--line); border-radius:24px; background:white; }
.guide-card:hover { background:var(--soft); border-color:#cbd5e1; }
.guide-card h3 { margin:0 0 14px; font-size:1.25rem; font-weight:700; line-height:1.4; letter-spacing:-.025em; }
.guide-card p { flex:1; margin:0 0 32px; color:var(--muted); font-size:1rem; line-height:1.8; }
.guide-domain { color:var(--muted); font-size:.6875rem; letter-spacing:.08em; }
.faq-list { margin-block-start:36px; border-block-start:1px solid var(--line); }
.faq-list details { border-block-end:1px solid var(--line); }
.faq-list summary { position:relative; padding:26px 44px 26px 0; font-size:1.125rem; font-weight:650; line-height:1.6; cursor:pointer; list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+'; position:absolute; inset-inline-end:8px; inset-block-start:24px; color:#8b95a1; font-size:1.5rem; font-weight:400; }
.faq-list details[open] summary::after { content:'−'; }
.faq-list details > div { max-width:940px; padding:0 44px 28px 0; }
.faq-list p { margin:0 0 14px; color:var(--muted); font-size:1rem; line-height:1.85; }
.faq-list summary:focus-visible,.video-button:focus-visible { outline:3px solid var(--blue); outline-offset:5px; border-radius:8px; }
.contact-panel .eyebrow { color:var(--blue); }
.contact-emails { display:flex; flex-direction:column; align-items:flex-start; gap:8px; margin-block-start:24px; min-width:0; }
.contact-email { display:inline-block; max-width:100%; min-height:44px; color:#1765cb; font-size:clamp(1.25rem,3vw,2rem); font-weight:650; line-height:1.65; letter-spacing:-.03em; overflow-wrap:anywhere; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:6px; }

/* Studio: released work and clearly separated development. */
.portfolio-notice { max-width:860px; margin:0 0 28px; color:var(--muted); font-size:.875rem; line-height:1.8; }
.portfolio-group,.vision-roadmap { padding-block:64px; border-block-end:1px solid var(--line); scroll-margin-top:100px; }
.portfolio-group > h2,.vision-roadmap > h2 { margin:0 0 18px; font-size:clamp(1.875rem,3vw,2.5rem); line-height:1.35; letter-spacing:-.035em; text-wrap:balance; }
.portfolio-group > p,.vision-roadmap > p { color:var(--muted); line-height:1.85; }
.portfolio-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-block-start:32px; }
.portfolio-card { min-width:0; padding:32px; border:1px solid var(--line); border-radius:24px; background:var(--soft); }
.portfolio-card h3 { margin:24px 0 14px; font-size:1.375rem; line-height:1.4; letter-spacing:-.025em; overflow-wrap:anywhere; }
.portfolio-card p,.vision-steps p { margin:0; color:var(--muted); font-size:1rem; line-height:1.85; }
.portfolio-card .text-link { margin-block-start:24px; }
.vision-roadmap > .status { display:inline-block; margin-block-end:24px; }
.vision-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding:0; margin:32px 0; list-style:none; }
.vision-steps li { min-width:0; padding:28px; background:#f2f7ff; border-radius:24px; }
.vision-steps h3 { margin:0 0 14px; font-size:1.125rem; line-height:1.5; }
.business-overview { display:grid; grid-template-columns:1fr 1.2fr; gap:88px; padding-block:64px 88px; border-block-start:1px solid var(--line); }
.business-heading h2,.studio-evidence > h2 { margin:0 0 24px; font-size:clamp(1.875rem,3vw,2.5rem); line-height:1.35; font-weight:700; letter-spacing:-.035em; text-wrap:balance; }
.business-heading p:not(.eyebrow),.evidence-grid p { margin:0; color:var(--muted); font-size:1rem; line-height:1.85; }
.business-facts { min-width:0; margin:0; }
.business-facts > div { padding-block:22px; border-block-end:1px solid var(--line); }
.business-facts > div:first-child { padding-block-start:0; }
.business-facts dt { margin-block-end:8px; color:var(--ink); font-size:1rem; font-weight:650; }
.business-facts dd { margin:0; color:var(--muted); font-size:1rem; line-height:1.85; }
.studio-evidence { padding-block:72px 88px; border-block-start:1px solid var(--line); }
.evidence-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:24px; margin-block-start:36px; }
.evidence-grid article { min-width:0; padding:36px; border:1px solid var(--line); border-radius:24px; }
.evidence-release { background:#f2f7ff; }
.evidence-roadmap { background:var(--soft); }
.evidence-grid h3 { margin:24px 0 16px; font-size:clamp(1.375rem,2.3vw,1.875rem); font-weight:700; line-height:1.35; letter-spacing:-.035em; overflow-wrap:anywhere; }
.evidence-grid .evidence-subtitle { margin-block-end:14px; color:var(--ink); font-weight:600; }
.evidence-stores { display:flex; flex-wrap:wrap; gap:8px 24px; margin-block-start:20px; }
.roadmap-links { padding:0; margin:24px 0 0; list-style:none; }
.roadmap-links li { border-block-start:1px solid var(--line); }
.roadmap-links a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding-block:18px; color:#1765cb; font-size:1rem; font-weight:600; overflow-wrap:anywhere; }
.studio-manifesto { display:grid; grid-template-columns:1fr 2.2fr; gap:72px; align-items:center; padding-block:80px; border-block-start:1px solid var(--line); }
.studio-sign { display:grid; place-items:center; width:200px; max-width:100%; aspect-ratio:1; border-radius:48px; background:#eaf3ff; color:var(--blue); font-size:8rem; font-weight:750; line-height:1; }
.studio-manifesto h2 { margin:0 0 24px; font-size:clamp(1.875rem,3vw,2.5rem); font-weight:700; line-height:1.4; letter-spacing:-.035em; }
.studio-manifesto h2 em { color:var(--blue); font-style:normal; }
.studio-manifesto p { margin:0; color:var(--muted); font-size:1rem; line-height:1.9; }
.studio-principles { padding-block-start:24px; }
.studio-links { display:flex; flex-wrap:wrap; gap:12px; margin-block-start:48px; }
.studio-independent-note { max-width:900px; margin-block:28px 0; color:var(--muted); font-size:.8125rem; line-height:1.8; }

@media (max-width:1000px) {
  .detail-intro,.video-section { gap:36px; }
  .feature-grid,.guide-grid { gap:16px; }
  .feature-grid article,.guide-card { padding:24px; }
  .business-overview { gap:48px; }
  .evidence-grid article { padding:28px; }
}
@media (max-width:760px) {
  .portfolio-grid,.vision-steps { grid-template-columns:1fr; gap:16px; }
  .portfolio-group,.vision-roadmap { padding-block:48px; }
  .portfolio-card,.vision-steps li { padding:28px 24px; }
  .business-identity { padding:28px 24px; margin-block-end:32px; }
  .business-profile { grid-template-columns:1fr; gap:20px; }
  .page-shell { width:calc(100% - 40px); padding-block-end:80px; }
  .breadcrumbs { gap:8px; margin-block-start:18px; font-size:.75rem; }
  .page-hero { padding-block:54px 48px; }
  .page-title { margin-block-end:20px; font-size:clamp(2.125rem,7.5vw,3rem); }
  .page-lead { font-size:1rem; }
  .category-bar { gap:10px; font-size:.8125rem; }
  .detail-intro { grid-template-columns:1fr; gap:36px; padding-block:40px 48px; }
  .detail-title h1 { font-size:clamp(2.75rem,10vw,3.875rem); }
  .detail-title .product-meta { margin-block-end:24px; }
  .detail-subtitle { font-size:1.25rem; }
  .detail-visual { max-width:520px; margin-inline:auto; }
  .detail-visual strong { font-size:8rem; }
  .section-nav { gap:4px 22px; font-size:.875rem; }
  .detail-section { padding-block:48px; }
  .detail-section h2,.related-section h2 { margin-block-end:26px; font-size:1.875rem; }
  .feature-grid,.guide-grid,.video-section,.related-section > div,.business-overview,.evidence-grid,.studio-manifesto { grid-template-columns:1fr; }
  .feature-grid,.guide-grid { gap:16px; }
  .feature-number { margin-block-end:20px; }
  .video-section { gap:28px; }
  .video-button { min-height:220px; }
  .requirements-section dl > div { grid-template-columns:1fr; gap:8px; padding-block:20px; }
  .purchase-panel,.contact-panel,.development-panel { margin-block:40px; padding:28px 24px; border-radius:24px; }
  .purchase-panel h2,.contact-panel h2,.development-panel h2 { font-size:1.75rem; }
  .related-section > div { gap:0; }
  .related-section a + a { border-block-start:0; }
  .related-section a > span:first-child { font-size:1.125rem; }
  .faq-list summary { padding-block:22px; font-size:1rem; }
  .faq-list summary::after { inset-block-start:20px; }
  .faq-list details > div { padding-inline-end:12px; }
  .faq-list p { font-size:.9375rem; }
  .business-overview { gap:32px; padding-block:40px 52px; }
  .business-heading h2,.studio-evidence > h2 { font-size:1.875rem; }
  .studio-evidence { padding-block:48px; }
  .evidence-grid article { padding:28px 24px; }
  .evidence-grid h3 { font-size:1.625rem; }
  .studio-manifesto { gap:32px; padding-block:48px; }
  .studio-sign { width:120px; border-radius:30px; font-size:5rem; }
  .studio-manifesto h2 { font-size:1.875rem; }
}
