/*
Theme Name: CryptoNeb Editorial
Theme URI: https://cryptoneb.com
Author: CryptoNeb
Description: Lightweight native block theme for CryptoNeb editorial content.
Version: 1.3.2
Requires at least: 7.0
Requires PHP: 8.2
Text Domain: cryptoneb-editorial
*/

:root { color-scheme: light; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { text-rendering: optimizeLegibility; }
a { text-underline-offset: .18em; text-decoration-thickness: .08em; }
a:hover { text-decoration-thickness: .13em; }
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible { outline:3px solid #0f766e; outline-offset:3px; }
.cn-skip-link { position:fixed; z-index:100; top:8px; left:8px; padding:10px 14px; background:#0f172a; color:#fff; transform:translateY(-160%); }
.cn-skip-link:focus { transform:translateY(0); }
.cn-shell { width:min(calc(100% - 40px),1160px); max-width:1160px; margin-inline:auto; }
.cn-reading { width:min(calc(100% - 40px),760px); max-width:760px; margin-inline:auto; }
.cn-header { border-bottom:1px solid #dbe3ea; background:rgba(248,250,252,.96); position:sticky; top:0; z-index:20; backdrop-filter:blur(12px); }
.cn-header-row { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:28px; position:relative; }
.cn-site-brand { display:flex; align-items:center; flex:0 0 auto; line-height:0; text-decoration:none; }
.cn-site-brand img { display:block; width:218px; max-width:100%; height:auto; }
.cn-header-actions { display:flex; align-items:center; gap:16px; }
.cn-header-search { margin:0; flex:0 0 auto; min-width:0; }
.cn-header-search .wp-block-search__inside-wrapper { border:0 !important; min-width:0; }
.cn-header-search .wp-block-search__input { min-width:0; }
.cn-header-search .wp-block-search__button { margin:0; padding:9px !important; min-width:42px; min-height:42px; background:transparent !important; color:#0f172a !important; }
.cn-header-search .wp-block-search__button:hover { background:#e2e8f0 !important; }
.cn-hero { padding:clamp(48px,6vw,78px) 0; border-bottom:1px solid #dbe3ea; background:radial-gradient(circle at 82% 0%,#ccfbf1 0,transparent 33%),#f8fafc; }
.cn-eyebrow { color:#0f766e; font-weight:750; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; }
.cn-hero h1 { max-width:850px; margin:14px 0 20px; font-size:clamp(2.7rem,7vw,5.4rem); line-height:.98; letter-spacing:-.055em; }
.cn-hero p { max-width:690px; margin:0; color:#475569; font-size:clamp(1.08rem,2vw,1.3rem); line-height:1.65; }
.cn-section { padding:clamp(42px,5.5vw,64px) 0; }
.cn-section-head { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:24px; }
.cn-section h2 { letter-spacing:-.035em; }
.cn-section-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px 18px; }
.cn-section-links a,.cn-section-head > a { color:#0f766e; font-weight:750; text-decoration:none; }
.cn-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.cn-card { min-height:0; padding:22px; border:1px solid #dbe3ea; border-radius:18px; background:#fff; box-shadow:0 12px 32px rgba(15,23,42,.05); }
.cn-card h3 { margin-top:0; font-size:1.2rem; }
.cn-card p { color:#64748b; }
.cn-card a { color:#0f766e; font-weight:750; }
.cn-post-list { padding:0; list-style:none; }
.cn-post-list > li { padding:28px 0; border-top:1px solid #dbe3ea; }
.cn-post-list .wp-block-post-title { margin:0 0 10px; font-size:clamp(1.35rem,3vw,2rem); }
.cn-post-list .wp-block-post-title a { color:#0f172a; text-decoration:none; }
.cn-post-list .wp-block-post-excerpt { color:#475569; }
.cn-meta { color:#64748b; font-size:.9rem; }
.cn-article { padding:clamp(48px,8vw,90px) 0; }
.cn-article h1 { font-size:clamp(2.35rem,6vw,4.4rem); line-height:1.04; letter-spacing:-.045em; }
.cn-article .wp-block-post-content { width:100%; font-size:1.08rem; line-height:1.8; }
.cn-article .wp-block-post-content > * { max-width:100%; margin-left:0; margin-right:0; }
.cn-article .wp-block-post-content > .alignwide { width:min(1160px,calc(100vw - 40px)); max-width:1160px; margin-left:50%; transform:translateX(-50%); }
.cn-article table { width:100%; border-collapse:collapse; }
.cn-article .wp-block-table,.cn-responsive-table { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.cn-article th,.cn-article td { padding:12px; border:1px solid #cbd5e1; text-align:left; vertical-align:top; }
.cn-update-note { padding:14px 16px; border-left:3px solid #0f766e; background:#eef5f4; color:#334155; font-size:.94rem; }
.cn-footer { padding:58px 0 28px; border-top:1px solid #dbe3ea; background:#0f172a; color:#cbd5e1; }
.cn-footer-layout { display:grid; grid-template-columns:1.35fr 3fr; gap:40px; align-items:start; }
.cn-footer-brand { color:#fff !important; font-size:1.55rem; font-weight:850; letter-spacing:-.04em; text-decoration:none; }
.cn-footer-branding p { max-width:330px; line-height:1.6; }
.cn-footer-nav-list,.cn-footer-nav-list .sub-menu { list-style:none; margin:0; padding:0; }
.cn-footer-nav-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.cn-footer-nav-list > li > a { display:block; margin:0 0 8px; color:#fff; font-size:.82rem; font-weight:760; letter-spacing:.08em; text-transform:uppercase; text-decoration:none; }
.cn-footer-nav-list .sub-menu { display:grid; gap:8px; }
.cn-footer-nav-list .sub-menu a { color:#cbd5e1; text-decoration:none; }
.cn-footer-nav-list a:hover { color:#5eead4; }
.cn-footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:44px; padding-top:20px; border-top:1px solid #334155; font-size:.85rem; }
.cn-footer-bottom a { color:#cbd5e1; }
.cn-404 { min-height:58vh; display:grid; place-items:center; text-align:center; }
.wp-block-search__inside-wrapper { border-color:#cbd5e1 !important; border-radius:999px; overflow:hidden; }
.wp-block-search__button { border-radius:999px !important; background:#0f766e !important; color:#fff !important; }

.cn-desktop-nav { display:block; white-space:nowrap; font-weight:650; font-size:.91rem; }
.cn-desktop-nav-list,.cn-desktop-nav-list .sub-menu { list-style:none; margin:0; padding:0; }
.cn-desktop-nav-list { display:flex; align-items:center; gap:18px; }
.cn-desktop-nav a { color:#334155; text-decoration:none; }
.cn-desktop-nav a:hover,.cn-desktop-nav .current-menu-item > a,.cn-desktop-nav .current-menu-ancestor > a { color:#0f766e; }
.cn-desktop-nav .menu-item-has-children { position:relative; }
.cn-desktop-nav .menu-item-has-children > a::after { content:" +"; color:#0f766e; }
.cn-desktop-nav .menu-item-has-children.is-open > a::after { content:" −"; }
.cn-desktop-nav .sub-menu { display:none; position:absolute; z-index:35; top:calc(100% + 14px); right:0; min-width:170px; gap:2px; padding:10px; border:1px solid #dbe3ea; border-radius:14px; background:#fff; box-shadow:0 20px 45px rgba(15,23,42,.16); }
.cn-desktop-nav .menu-item-has-children:hover > .sub-menu,.cn-desktop-nav .menu-item-has-children:focus-within > .sub-menu,.cn-desktop-nav .menu-item-has-children.is-open > .sub-menu { display:grid; }
.cn-desktop-nav .sub-menu a { display:block; padding:9px 10px; border-radius:9px; }
.cn-desktop-nav .sub-menu a:hover,.cn-desktop-nav .sub-menu a:focus-visible { background:#eef5f4; }
.cn-mobile-nav,.cn-mobile-nav-toggle { display:none; }

.cn-hero-editorial { padding:clamp(44px,6vw,72px) 0; }
.cn-feature-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr); gap:28px; align-items:start; }
.cn-feature-side { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
.cn-story-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:stretch; }
.cn-story-grid.cn-story-grid--count-1 { grid-template-columns:minmax(0,1fr); max-width:760px; }
.cn-story-grid.cn-story-grid--count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cn-story-grid > li { margin-block:0; min-width:0; display:flex; }
.cn-story-grid > li > .cn-story-card { flex:1 1 auto; }
.cn-story-card { min-width:0; border-top:3px solid #0f766e; background:#fff; padding:22px; box-shadow:0 10px 30px rgba(15,23,42,.055); border-radius:0 0 16px 16px; display:flex; flex-direction:column; align-self:stretch; }
.cn-story-body { min-width:0; display:flex; flex:1 1 auto; flex-direction:column; }
.cn-story-card > .wp-block-post-date,.cn-story-card > time,.cn-story-body > time,.cn-story-footer { margin-top:auto; padding-top:.5rem; }
.cn-story-card h2,.cn-story-card h3 { margin:.55rem 0 .7rem; font-size:clamp(1.12rem,2vw,1.42rem); line-height:1.22; letter-spacing:-.025em; }
.cn-story-card h2 a,.cn-story-card h3 a { color:#0f172a; text-decoration:none; }
.cn-story-card h2 a:hover,.cn-story-card h3 a:hover { color:#0f766e; }
.cn-story-card p { color:#475569; line-height:1.55; margin:.5rem 0 1rem; }
.cn-story-card time { color:#64748b; font-size:.82rem; }
.cn-story-image { display:block; margin:-22px -22px 18px; aspect-ratio:16/9; overflow:hidden; }
.cn-story-image img { width:100%; height:100%; object-fit:cover; }
.cn-kicker { color:#0f766e; font-size:.75rem; line-height:1.2; font-weight:800; letter-spacing:.07em; text-transform:uppercase; text-decoration:none; }
.cn-feature-lead .cn-story-card { border-top-width:5px; padding:28px; }
.cn-feature-lead h1 { font-size:clamp(2.25rem,5vw,4.25rem); line-height:1.01; letter-spacing:-.05em; margin:.55rem 0 .7rem; }
.cn-feature-lead h1 a { color:#0f172a; text-decoration:none; }
.cn-feature-lead p { max-width:650px; font-size:1.08rem; }
.cn-feature-side .cn-story-card { padding:14px 16px; min-height:0; }
.cn-feature-side .cn-story-card p { display:none; }
.cn-feature-side .cn-story-card h2 { margin:.38rem 0 .55rem; font-size:1.03rem; }
.cn-feature-side .cn-story-footer { padding-top:.25rem; }
.cn-topic-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.cn-topic-section { background:#eef5f4; }
.cn-section-latest,.cn-section-eth-alt,.cn-section-guides { background:#fff; }
.cn-section-compact { padding-inline:0; padding-bottom:0; }
.cn-filter-nav { display:flex; flex-wrap:wrap; gap:9px; margin:24px 0 34px; }
.cn-filter-nav a { padding:8px 13px; color:#0f172a; background:#eef5f4; border-radius:999px; font-size:.88rem; font-weight:700; text-decoration:none; }
.cn-hub-intro { color:#475569; font-size:1.08rem; }
.cn-hub-page .cn-topic-section > .cn-shell { width:100%; max-width:none; }
.cn-news-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cn-archive > .cn-shell { width:min(calc(100% - 40px),1160px); max-width:1160px; }
.cn-archive-head { max-width:760px; margin-bottom:34px; }
.cn-archive-head h1 { font-size:clamp(2.4rem,6vw,4.5rem); letter-spacing:-.05em; margin-bottom:16px; }
.cn-archive-head .taxonomy-description { color:#475569; font-size:1.08rem; line-height:1.7; }
.cn-pagination { margin-top:36px; }
.cn-pagination ul { list-style:none; display:flex; flex-wrap:wrap; gap:8px; padding:0; }
.cn-pagination a,.cn-pagination span { display:inline-block; min-width:40px; padding:8px 12px; border:1px solid #cbd5e1; border-radius:999px; text-align:center; }
.cn-breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; color:#64748b; font-size:.86rem; margin-bottom:28px; }
.cn-breadcrumbs a { color:#475569; }
.cn-article-footer { margin-top:46px; padding-top:24px; border-top:1px solid #dbe3ea; display:grid; gap:14px; }
.cn-related { padding-top:clamp(50px,8vw,82px); }
.cn-related .cn-story-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }

@media (max-width:1050px) {
  .cn-desktop-nav { display:none; }
  .cn-mobile-nav-toggle { display:block; margin-left:auto; padding:8px 10px; border:0; background:transparent; color:#0f172a; font:inherit; font-weight:750; cursor:pointer; }
  .cn-mobile-nav { position:absolute; z-index:30; left:0; right:0; top:100%; width:auto; padding:14px; border:1px solid #dbe3ea; border-radius:16px; background:#fff; box-shadow:0 20px 45px rgba(15,23,42,.16); }
  .cn-mobile-nav:not([hidden]) { display:block; }
  .cn-mobile-nav[hidden] { display:none; }
  .cn-mobile-nav-list,.cn-mobile-nav-list .sub-menu { list-style:none; margin:0; padding:0; }
  .cn-mobile-nav-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px; }
  .cn-mobile-nav .sub-menu { display:contents; }
  .cn-mobile-nav li { min-width:0; }
  .cn-mobile-nav a { display:block; padding:10px; color:#0f172a; text-decoration:none; }
  .cn-mobile-nav .menu-item-has-children > a { font-weight:750; }
  .cn-feature-grid { grid-template-columns:minmax(0,1fr); }
  .cn-feature-side { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cn-story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cn-story-grid.cn-story-grid--count-1 { grid-template-columns:minmax(0,1fr); }
  .cn-related .cn-story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:981px) and (max-width:1050px) {
  .cn-story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .cn-shell,.cn-reading,.cn-archive > .cn-shell { width:min(calc(100% - 32px),1160px); }
  .cn-header { position:static; }
  .cn-header-row { min-height:72px; gap:8px 12px; flex-wrap:wrap !important; padding-block:10px; }
  .cn-site-brand img { width:180px; }
  .cn-header-search:not(.wp-block-search__searchfield-hidden) { order:10; flex:0 0 100%; width:100%; }
  .cn-header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper { width:100%; }
  .cn-header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__input { flex:1 1 auto; width:auto; }
  .cn-mobile-nav { left:0; right:0; }
  .cn-feature-grid,.cn-feature-side { grid-template-columns:minmax(0,1fr); }
  .cn-story-grid,.cn-news-grid,.cn-topic-grid,.cn-related .cn-story-grid { grid-template-columns:minmax(0,1fr); }
  .cn-story-grid.cn-story-grid--count-2 { grid-template-columns:minmax(0,1fr); }
  .cn-feature-lead .cn-story-card { padding:22px; }
  .cn-feature-lead h1 { font-size:clamp(2.05rem,10vw,3rem); }
  .cn-feature-side { gap:10px; }
  .cn-feature-side .cn-story-card { padding:12px 16px; }
  .cn-feature-side .cn-story-card h2 { font-size:1rem; line-height:1.2; }
  .cn-feature-side .cn-kicker { font-size:.69rem; }
  .cn-section-head { align-items:flex-start; flex-direction:column; gap:10px; }
  .cn-section-links { justify-content:flex-start; }
  .cn-topic-grid .cn-card { padding:16px 18px; }
  .cn-topic-grid .cn-card p { margin:.4rem 0; }
  .cn-footer-layout { grid-template-columns:minmax(0,1fr); }
  .cn-footer-nav-list { grid-template-columns:minmax(0,1fr); gap:24px; }
  .cn-footer-bottom { flex-direction:column; }
  .cn-article .wp-block-post-content > .alignwide { width:calc(100vw - 32px); }
}
@media (max-width:360px) {
  .cn-mobile-nav-list { grid-template-columns:minmax(0,1fr); }
  .cn-site-brand img { width:180px; }
}
