/* Finite legacy families use the existing PPNeue, paper and plum public design tokens. */
body.gg-legacy-family { --gg-paper:#f8f6f2; --gg-ink:#28262c; --gg-muted:#625c68; --gg-line:#ded7e5; --gg-plum:#382253; padding-top:112px; min-width:320px; background:var(--gg-paper); color:var(--gg-ink); font-family:PPNeue,Arial,sans-serif; }
body.gg-legacy-family [hidden] { display:none!important; }
body.gg-legacy-family > header.page-nav { padding:0!important; margin:0!important; border:0!important; background:transparent!important; color:inherit!important; text-align:initial!important; }
body.gg-legacy-family > header.page-nav nav.page-nav-links { margin:0; border:1px solid rgba(255,255,255,.2); }
body.gg-legacy-family > footer.page-footer { margin-top:48px; }
body.gg-legacy-family .gg-legacy-hero-art { width:min(100%,900px); height:clamp(180px,22vw,300px); margin:24px auto 32px; overflow:hidden; border:1px solid var(--gg-line); border-radius:32px; background:#eee8f4; box-shadow:0 20px 50px rgba(50,16,95,.08); }
body.gg-legacy-family .gg-legacy-hero-art img { width:100%; height:100%; object-fit:cover; object-position:center 25%; }
body.gg-legacy-family :is(main,section,article) { min-width:0; }
body.gg-legacy-family :is(main,section,article) :is(h1,h2,h3) { font-family:PPNeue,Arial,sans-serif; letter-spacing:-.035em; line-height:1.12; }
body.gg-legacy-family :is(main,section,article) h1 { font-size:clamp(2.25rem,4vw,3.5rem); font-weight:350; }
body.gg-legacy-family :is(main,section,article) h2 { font-weight:400; }
body.gg-legacy-family :is(main,section,article) p { line-height:1.55; }
body.gg-legacy-family :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #704a87; outline-offset:3px; }
body.gg-legacy-family :is(button,input,select,textarea) { font:inherit; }
body.gg-legacy-family :is(input,select,textarea) { max-width:100%; }
body.gg-legacy-family :is(.glass-card,.info-box,.koota-item,.feature,.input-section,.output-section,.score-item,.step,.faq details) { border:1px solid var(--gg-line); border-radius:24px; background:#fff; color:var(--gg-ink); box-shadow:none; }
body.gg-legacy-family :is(.glass-card,.info-box,.feature,.input-section,.output-section,.step) { overflow-wrap:anywhere; }
body.gg-legacy-family .gradient-text { background:none; color:var(--gg-ink); -webkit-text-fill-color:currentColor; }
body.gg-legacy-family :is(.text-gray-300,.text-gray-400,.text-gray-500,.text-gray-600,.text-gray-700,.text-gray-800) { color:var(--gg-muted); }
body.gg-legacy-family :is(.text-orange-300,.text-orange-400,.text-orange-500,.text-orange-600) { color:#704a87; }
body.gg-legacy-family :is(.breadcrumb-nav,.breadcrumb-nav a,.breadcrumb-nav li,.breadcrumb-nav span) { color:var(--gg-muted); }
body.gg-legacy-family :is(input,select,textarea) { color:var(--gg-ink); background:#fff; border:1px solid #bcb3c5; }
body.gg-legacy-family form button[type="submit"] { min-height:48px; border-radius:24px; background:#382253; color:#fff; }
body.gg-legacy-family .cta :is(.text-gray-300,.text-gray-400) { color:rgba(255,255,255,.8); }

/* Stone color stays in small accents; content and actions use readable paper surfaces. */
body.gg-legacy-family[data-gg-legacy-kind="gemstones"] :is(.text-gray-300,.text-gray-400,.text-gray-500,.text-gray-600,.text-gray-700,.text-gray-800) { color:var(--gg-muted); }
body.gg-legacy-family[data-gg-legacy-kind="gemstones"] section > :is(.container,.max-w-7xl) { max-width:1280px; }
body.gg-legacy-family[data-gg-legacy-kind="gemstones"] :is(a[class*="px-6"],button[class*="px-6"]) { min-height:48px; }
body.gg-legacy-family[data-gg-legacy-kind="gemstones"] .gg-legacy-gem-art { width:min(100%,320px); aspect-ratio:1; flex-shrink:0; overflow:hidden; border:1px solid var(--gg-line); border-radius:32px; background:#eee8f4; box-shadow:0 20px 50px rgba(50,16,95,.1); }
body.gg-legacy-family[data-gg-legacy-kind="gemstones"] .gg-legacy-gem-art img { width:100%; height:100%; padding:16px; object-fit:contain; }

/* Learn details keep a measured reading width and clear table overflow. */
body.gg-legacy-family[data-gg-legacy-kind="learn"] .breadcrumb { max-width:1280px; color:var(--gg-muted); }
body.gg-legacy-family[data-gg-legacy-kind="learn"] main.container { max-width:1280px; }
body.gg-legacy-family[data-gg-legacy-kind="learn"] article { max-width:76ch; }
body.gg-legacy-family[data-gg-legacy-kind="learn"] .article-content :is(p,li) { color:#514b56; line-height:1.7; }
body.gg-legacy-family[data-gg-legacy-kind="learn"] .article-content :is(h2,h3) { color:var(--gg-ink); border-color:var(--gg-line); }
body.gg-legacy-family[data-gg-legacy-kind="learn"] .info-box { background:#eee8f4; border-left:4px solid #704a87; }
body.gg-legacy-family[data-gg-legacy-kind="learn"] .gg-legacy-learn-art { width:100%; margin:24px 0 32px; overflow:hidden; border-radius:24px; background:#eee8f4; }
body.gg-legacy-family[data-gg-legacy-kind="learn"] .gg-legacy-learn-art img { width:100%; max-height:360px; object-fit:cover; }

/* Older tool guides keep their H1, links, forms and calculators. */
body.gg-legacy-family[data-gg-legacy-kind="tools"] { --primary:#704a87; --secondary:#382253; }
body.gg-legacy-family[data-gg-legacy-kind="tools"] > header:not(.page-nav) { max-width:960px; margin:0 auto; padding:28px 20px; border:0; background:#eee8f4; color:var(--gg-ink); border-radius:28px; }
body.gg-legacy-family[data-gg-legacy-kind="tools"] > main.container { max-width:960px; }
body.gg-legacy-family[data-gg-legacy-kind="tools"] :is(h2,h3,h4,.hindi,.koota-item strong,.input-section h4,.output-section h4) { color:var(--gg-plum); }
body.gg-legacy-family[data-gg-legacy-kind="tools"] h2 { border-color:#704a87; }
body.gg-legacy-family[data-gg-legacy-kind="tools"] .nav a { min-height:44px; display:inline-flex; align-items:center; color:var(--gg-plum); border-color:var(--gg-line); border-radius:22px; background:#fff; }
body.gg-legacy-family[data-gg-legacy-kind="tools"] .cta { border-radius:28px; background:#382253; color:#fff; }
body.gg-legacy-family[data-gg-legacy-kind="tools"] .cta-btn { min-height:48px; display:inline-flex; align-items:center; justify-content:center; border-radius:24px; color:#382253; background:#f8f6f2; }
body.gg-legacy-family[data-gg-legacy-kind="tools"] .faq p { color:var(--gg-muted); }
body.gg-legacy-family[data-gg-legacy-kind="tools"] .gg-legacy-tool-art { width:min(100%,900px); max-height:320px; margin:20px auto 32px; overflow:hidden; border-radius:28px; background:#eee8f4; }
body.gg-legacy-family[data-gg-legacy-kind="tools"] .gg-legacy-tool-art img { width:100%; max-height:320px; object-fit:cover; }

/* Legacy mobile aliases keep their article content while the shared header takes over. */
body.gg-legacy-root > :is(header.mobile-header,nav.mobile-nav-bar,nav.mobile-nav,#mobileMenuOverlay,#mobileMenuDrawer) { display:none!important; }
body.gg-legacy-root > nav.mobile-bottom-nav { display:none!important; }
body.gg-legacy-blog-index > header:not(.page-nav) { display:none!important; }

/* Exact root editorial routes use the same shell without changing their forms or dated copy. */
body.gg-legacy-root { --primary:#704a87; --secondary:#382253; }
body.gg-legacy-root > header:not(.page-nav) { width:min(1200px,calc(100% - 32px)); margin:0 auto 32px; padding:28px 20px; border:1px solid var(--gg-line); border-radius:28px; background:#eee8f4!important; color:var(--gg-ink)!important; box-shadow:none; }
body.gg-legacy-root > header:not(.page-nav) :is(h1,.subtitle) { color:var(--gg-ink)!important; text-align:left; text-shadow:none; opacity:1; }
body.gg-legacy-root > header:not(.page-nav) h1 { font-size:clamp(2rem,4vw,3rem); }
body.gg-legacy-root > :is(main,.content-wrapper,.container) { max-width:1200px; margin-inline:auto; }
body.gg-legacy-root :is(.text-gray-300,.text-gray-400,.text-gray-500,.text-gray-600,.text-gray-700,.text-gray-800) { color:var(--gg-muted); }
body.gg-legacy-root :is(.glass-card,.info-box,.feature,.course-track,.faq-item) { background:#fff; color:var(--gg-ink); }
body.gg-legacy-root :is(.gradient-text,.nav-brand,.cta-button) { -webkit-text-fill-color:currentColor; }
body.gg-legacy-root :is(.cta-button,.btn-primary) { min-height:48px; border-radius:24px; background:#382253; color:#fff; }
body.gg-legacy-root > .gg-legacy-hero-art { height:clamp(180px,26vw,340px); }

@media (max-width:760px) {
  body.gg-legacy-family { padding-top:86px; }
  body.gg-legacy-family .gg-legacy-hero-art { height:180px; margin:18px auto 24px; border-radius:22px; }
  body.gg-legacy-family :is(main,section,article) h1 { font-size:clamp(2rem,9vw,2.75rem); }
  body.gg-legacy-family :is(.glass-card,.info-box,.koota-item,.feature,.input-section,.output-section,.score-item,.step) { border-radius:18px; }
  body.gg-legacy-family[data-gg-legacy-kind="tools"] > header:not(.page-nav) { margin:0 16px; }
  body.gg-legacy-family[data-gg-legacy-kind="tools"] .koota-grid { grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); }
  body.gg-legacy-family[data-gg-legacy-kind="tools"] .cta-btn { width:100%; }
  body.gg-legacy-family form :is(.grid-cols-2,.grid-cols-3) { grid-template-columns:minmax(0,1fr); }
  body.gg-legacy-family form :is(input,select,textarea) { min-width:0; width:100%; }
}
