.blog-page{background:#fafaf9;color:#20201e}.blog-page .nav-links [aria-current]{color:#c62a06}.journal,.article-page{max-width:1120px;margin:auto;padding:150px 32px 90px}.eyebrow{font-size:12px;font-weight:750;text-transform:uppercase;color:#bd2a0a}.journal-header{padding:32px 0 58px}.journal-header h1{font-size:clamp(42px,6.2vw,76px);letter-spacing:-.065em;line-height:1.04;font-weight:650;margin:23px 0}.journal-header>p:last-child{font-size:18px;color:#686861;max-width:510px;line-height:1.65}.featured{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);overflow:hidden;border-radius:20px;background:#efefeb;border:1px solid #e5e5df}.featured-image{min-width:0}.post-art{aspect-ratio:1.5;overflow:hidden;background:#e7e7e2;border-radius:14px}.post-art img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.sample-art{background:#deded5;padding:28px 24px 0}.sample-art img{object-fit:contain;object-position:center top;filter:drop-shadow(0 10px 15px #0002);border-radius:12px}.featured .post-art{height:100%;min-height:405px;border-radius:0;background:#dce1d8;padding-top:35px}.featured-copy{min-width:0;padding:42px 38px 42px 58px;align-self:center}.featured h2{font-size:clamp(28px,3.1vw,39px);line-height:1.16;letter-spacing:-.045em;margin:20px 0}.featured-copy>p:not(.eyebrow){color:#66665e;font-size:16px}.post-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:#696962;margin:21px 0 15px}.post-meta>span:first-child{font-weight:650}.read-link{font-weight:650;font-size:14px;display:inline-flex;gap:20px;align-items:center;margin-top:13px}.read-link:hover,.post-card a:hover h3,.featured h2 a:hover{color:#bd2a0a}.section-line{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #dcdcd5;padding-top:25px;margin-bottom:28px}.section-line h2{font-size:23px;letter-spacing:-.035em}.section-line>span,.section-line>a{font-size:13px;color:#686861}.articles{margin-top:65px}.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.post-card:nth-child(2) .post-art{background:#e6ddd5}.post-card:nth-child(3) .post-art{background:#d9e0e8}.post-card .post-meta{justify-content:space-between;margin-bottom:12px}.post-card .post-meta>span:first-child{color:#bd2a0a;text-transform:uppercase}.post-card h3{font-size:24px;line-height:1.22;letter-spacing:-.035em;margin-bottom:13px}.post-card p{font-size:15px;line-height:1.65;color:#686861}.post-card a:hover .post-art img{transform:scale(1.025)}.blog-page .footer{background:#101110}.draft-banner{position:relative;top:110px;max-width:1056px;margin:0 auto;padding:10px 20px;background:#fff0d6;border:1px solid #e9d4af;border-radius:8px;color:#705117;font-size:13px}.draft-banner+.journal,.draft-banner+.article-page{padding-top:138px}.article-header{max-width:780px;margin:auto;padding:15px 0 40px}.back-link{display:inline-block;font-size:14px;color:#686861;margin-bottom:30px}.article-header h1{font-size:clamp(36px,5.5vw,62px);line-height:1.07;letter-spacing:-.055em;margin:20px 0}.article-deck{font-size:20px;line-height:1.65;color:#686861}.article-header .post-meta{margin-top:24px}.article-cover{max-width:900px;margin:auto}.article-cover .post-art{aspect-ratio:2.1}.article-cover .sample-art{padding-top:32px}.reading-layout{display:grid;grid-template-columns:220px minmax(0,680px);gap:60px;margin:55px auto 0;max-width:960px}.article-toc{align-self:start;position:sticky;top:120px}.article-toc nav{display:grid;gap:15px;margin-top:20px}.article-toc a{font-size:14px;color:#686861;line-height:1.5}.article-toc a:hover{color:#bd2a0a}.prose{font-size:18px;line-height:1.85;min-width:0;overflow-wrap:anywhere}.prose p,.prose ul,.prose ol,.prose blockquote,.prose figure{margin-bottom:24px}.prose h2{font-size:29px;line-height:1.25;letter-spacing:-.035em;margin:40px 0 16px;scroll-margin-top:120px}.prose h3{font-size:23px;line-height:1.35;margin:30px 0 12px;scroll-margin-top:120px}.prose a{color:#bd2a0a;text-decoration:underline;text-underline-offset:4px}.prose ul,.prose ol{padding-left:25px}.prose li+li{margin-top:8px}.prose blockquote{border-left:3px solid #f93001;padding-left:22px;font-style:italic}.prose figure img{border-radius:12px}.prose figcaption{font-size:13px;color:#686861}.article-cta{border-top:1px solid #dcdcd5;margin-top:45px;padding-top:10px}.related{margin-top:75px}.related .post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-empty{padding-top:60px;padding-bottom:60px;max-width:700px}.blog-empty h2{font-size:34px;letter-spacing:-.04em;margin:15px 0}.blog-empty p:not(.eyebrow){color:#686861}.no-cover{display:grid;place-items:center;color:#63635a;font-size:20px}.skip-link{position:fixed;top:-100px;left:20px;z-index:2000;background:#fff;padding:12px;color:#20201e}.skip-link:focus{top:10px}.blog-page :focus-visible{outline:3px solid #bd2a0a;outline-offset:5px}.blog-page .mobile-menu.open{display:flex}.blog-page .nav-mobile-toggle{min-width:44px;min-height:44px}
.blog-page .nav.scrolled .nav-inner{background:rgba(255,255,255,.84)}
.blog-page .nav.scrolled .nav-links a:not([aria-current]){color:#41413f}
.blog-page .nav.scrolled .nav-links a:hover:not([aria-current]){color:#1a1a1a}
@media(max-width:760px){.journal,.article-page{padding:120px 22px 60px}.journal-header{padding-top:20px;padding-bottom:36px}.journal-header h1{font-size:48px}.featured{grid-template-columns:1fr}.featured .post-art{min-height:280px;max-height:320px}.featured-copy{padding:40px 28px 28px}.featured h2{font-size:32px}.post-grid{grid-template-columns:1fr 1fr;gap:26px 20px}.post-card h3{font-size:22px}.reading-layout{grid-template-columns:1fr;gap:24px;margin-top:35px}.article-toc{position:static;border-bottom:1px solid #dcdcd5;padding-bottom:24px}.article-cover .post-art{aspect-ratio:1.5}.draft-banner{margin:0 20px;top:95px}.draft-banner+.journal,.draft-banner+.article-page{padding-top:115px}.article-deck{font-size:18px}}
@media(max-width:480px){.post-grid,.related .post-grid{grid-template-columns:1fr}.journal-header h1{font-size:43px}.post-card .post-art{aspect-ratio:1.6}.article-header h1{font-size:39px}.section-line h2{font-size:22px}.prose{font-size:17px}.post-meta{gap:10px}.blog-page .nav-inner{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.post-art img{transition:none}}

/* Release artwork contains labels: show the full composition. */
.post-art.release-art{aspect-ratio:4/3;background:#10151d;padding:0}.post-art.release-art img{object-fit:contain}.article-cover .post-art.release-art{aspect-ratio:4/3}.featured .post-art.release-art{padding:0}
.article-cover .cover-credit{margin:8px 2px 0;text-align:right;color:#77776f;font-size:12px}

/* Keep long article navigation reachable and portrait UI captures readable. */
@media(min-width:761px){.article-toc{max-height:calc(100dvh - 145px);overflow-y:auto;padding-right:12px;scrollbar-width:thin}}
.prose figure img{display:block;width:100%;max-height:620px;object-fit:contain;background:#efefeb;padding:16px;box-sizing:border-box}
@media(max-width:480px){.prose figure img{max-height:560px;padding:10px}}
.prose figure img{height:auto}

/* iPhone presentation for release screenshots. The original screen stays intact. */
.device-stage{display:flex;justify-content:center;padding:38px 24px 42px;margin-bottom:14px;border-radius:24px;background:radial-gradient(ellipse at 50% 30%,#fafaf8 0%,#eaeae5 100%);overflow:hidden}
.iphone-frame{position:relative;width:min(100%,280px);padding:7px;border:2px solid #787a7d;border-radius:44px;background:#171819;box-shadow:inset 0 0 0 1px #383a3d,0 22px 34px -17px #14171b55,0 3px 5px #14171b22}
.iphone-frame::before,.iphone-frame::after{content:"";position:absolute;width:3px;background:linear-gradient(90deg,#56585b,#a4a5a7,#57595c);border-radius:2px}
.iphone-frame::before{left:-4px;top:105px;height:42px;box-shadow:0 54px 0 #76787b}
.iphone-frame::after{right:-4px;top:147px;height:62px}
.iphone-screen{overflow:hidden;border-radius:35px;background:#000}
.prose .device-figure .iphone-screen img{display:block;width:100%;height:auto;max-height:none;padding:0;border-radius:0;background:#000}
.device-figure figcaption{max-width:520px;margin:0 auto;text-align:center;line-height:1.6}
@media(max-width:480px){.device-stage{padding:28px 20px 32px;border-radius:20px}.iphone-frame{width:min(100%,258px);border-radius:40px}.iphone-screen{border-radius:31px}}

/* Compact, two-level navigation for the complete release guide. */
.article-toc .toc-list,.article-toc .toc-list ul{list-style:none;margin:0;padding:0}
.article-toc .toc-list>li+li{margin-top:12px}
.article-toc .toc-grouped>li+li{margin-top:21px}
.article-toc .toc-group-title{display:block;font-size:13px;font-weight:700;color:#292a27;line-height:1.4;margin-bottom:7px}
.article-toc .toc-group ul{border-left:1px solid #ddded7;margin-left:2px;padding-left:12px}
.article-toc .toc-list a{display:block;font-size:13px;line-height:1.5;padding:4px 0}
.article-toc .toc-list a:hover{color:#bd2a0a}
@media(max-width:760px){.article-toc .toc-grouped{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}.article-toc .toc-grouped>li+li{margin-top:0}.article-toc .toc-list a{padding:6px 0}}

/* UI details share the mockup backdrop without a device bezel. */
.prose figure.detail-figure{margin:22px 0 30px}
.prose .detail-figure img{display:block;width:100%;height:auto;max-height:none;padding:0;border-radius:12px;background:transparent}
.prose .detail-stage img{max-width:460px;align-self:flex-start}
.detail-figure figcaption{max-width:520px;margin:0 auto;line-height:1.6;text-align:center}
@media(max-width:480px){.prose .detail-figure img{border-radius:10px}}

/* Category navigation sits above the latest-articles heading. */
.category-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.category-filters[hidden],.post-card[hidden],.category-empty[hidden]{display:none}
.category-pill{appearance:none;font:inherit;font-size:14px;font-weight:600;line-height:1.2;min-height:44px;padding:11px 19px;border:1px solid #deded8;border-radius:999px;background:transparent;color:#62625b;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.category-pill:hover{background:#eeeee9;color:#20211f;border-color:#c7c7bf}
.category-pill[aria-pressed="true"]{background:#20211f;border-color:#20211f;color:#fff}
.category-empty{padding:30px 0 40px;color:#686861;font-size:16px;line-height:1.7}
@media(max-width:480px){.category-filters{gap:8px;margin-bottom:24px}.category-pill{font-size:13px;padding:10px 15px}}
@media(prefers-reduced-motion:reduce){.category-pill{transition:none}}

/* Keep featured artwork within its grid track at intermediate widths. */
.featured-image{display:block;min-width:0;overflow:hidden}
.featured .post-art,.featured .post-art.release-art{width:100%;height:100%;aspect-ratio:auto}
@media(max-width:1000px){
  .featured{grid-template-columns:1fr}
  .featured-image{height:clamp(280px,42vw,420px)}
  .featured .post-art,.featured .post-art.release-art{min-height:0;max-height:none;padding-top:0}
  .featured .post-art.release-art img{object-fit:cover}
  .featured-copy{padding:32px clamp(24px,4vw,42px) 38px}
}
