/* Final public-site typography authority. See ../TYPOGRAPHY.md for role rules.
   Load after layout, restyle and mobile CSS. Do not introduce page-local families. */
@font-face{font-family:Spectral;src:url('/assets/spectral-400-latin.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Spectral;src:url('/assets/spectral-700-latin.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Spectral;src:url('/assets/spectral-400-italic-latin.woff2') format('woff2');font-weight:400;font-style:italic;font-display:block}
@font-face{font-family:Spectral;src:url('/assets/spectral-700-italic-latin.woff2') format('woff2');font-weight:700;font-style:italic;font-display:swap}
:root{
  --font-editorial:'Iowan Old Style','Palatino Linotype','Book Antiqua',Baskerville,'Times New Roman',serif;
  --font-reading:Spectral,Georgia,'Times New Roman',serif;
  --font-interface:'Gill Sans','Gill Sans MT',ui-sans-serif,-apple-system,system-ui,'Helvetica Neue',Arial,sans-serif;
  --type-page-title:34px;--type-section-heading:24px;--type-subheading:26px;--type-minor-heading:22px;
  --type-reading:19px;--type-introduction:20px;--type-caption:14px;
  --paper:#fff;--ink:#171714;--body:#34342e;--soft:#6f6d66;--muted:#6f6d66;--quiet:#6f6d66;
  --rule:#d5d5d1;--link-rule:#aaa9a1;--control-rule:#d5d5d1;--accent:#171714;
}
html,body{background:var(--paper)}
body{font-family:var(--font-reading);color:var(--body);background-image:none;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.intro-copy,.category-title,.topic-title h2,.writing-list a,.archive-list a,.plp-title,.plp-section-title,.plp-final-title,.essay-ty-title{font-family:var(--font-editorial);font-weight:400;color:var(--ink)}
.page-heading h1{font-family:var(--font-editorial);font-size:var(--type-page-title);font-weight:400;line-height:1.2;letter-spacing:-.025em;color:var(--ink)}
.page-heading .page-lede,.now-page .page-heading .page-lede{font-family:var(--font-reading);font-size:var(--type-introduction);font-weight:400;font-style:normal;line-height:1.55;letter-spacing:normal;color:var(--body)}
.prose,.section-copy,.now-page .section-copy,.story-list dd,.article-body,.essay-page .article-body,.support-editorial dd,.plp-body,.plp-lede,.essay-ty-body{font-family:var(--font-reading);font-size:var(--type-reading);font-weight:400;line-height:1.65;letter-spacing:normal;color:var(--body)}
.section-block > .section-label,.support-editorial h2.section-label,.guide-inside h2.section-label{font-family:var(--font-editorial);font-size:var(--type-section-heading);font-weight:400;font-style:normal;line-height:1.25;letter-spacing:-.01em;text-transform:none;color:var(--ink)}
.prose :is(h1,h2,h3,h4),.essay-page .article-body :is(h1,h2,h3,h4){font-family:var(--font-editorial);font-weight:400;line-height:1.25;letter-spacing:-.01em;color:var(--ink)}
.prose h2,.essay-page .article-body h2{font-size:var(--type-subheading)}
.prose h3,.essay-page .article-body h3{font-size:var(--type-minor-heading)}
.site-nav,.section-label,.article-kicker,.article-meta,.page-meta,.story-list dt,.writing-type,.writing-date,.archive-meta,.section-link,.site-footer,.support-footer,.essay-footer,.article-footer,.archive-controls,.archive-status,.archive-pagination,.topic-browse,.topic-count,.category-link,.resource-sections,.resource-cta,.form-note,.support-small,.newsletter-status,.comment-status,.comment-meta,.comment-form-foot,.photo-strip figcaption,.polaroid-strip .polaroid figcaption,.subscribe-quotes figcaption,.subscribe-reassurance,.testimonial figcaption,.newsletter-endorsement figcaption,.plp-fine,.plp-save-badge{font-family:var(--font-interface);font-style:normal;color:var(--muted)}
.story-list dt{font-size:var(--type-caption);line-height:1.65}
.archive-list p,.topic-list p,.resource-link p:not(.section-label),.resource-tool p,.masterclass-bonuses dd,.plp-faq dd{font-family:var(--font-reading);font-size:17px;line-height:1.55;color:var(--body)}
.comments h2,.support-form,.contact-form,.comment-form,.newsletter-result-actions,.newsletter-preview-note,.reader-preview-status,.course-facts,.masterclass-sale-bar,.plp-quote cite,.reader-comment .comment-meta{font-family:var(--font-interface)}
.support-editorial dt,.masterclass-bonuses dt,.plp-faq dt{font-family:var(--font-editorial);font-size:var(--type-minor-heading);font-weight:400;line-height:1.25;color:var(--ink)}
:is(input,button,select,textarea),.quiet-newsletter :is(input,button),.mobile-home-links a,.mobile-home-secondary a,.plp-cta,.reader-survey button{font-family:var(--font-interface)}
.subscribe-description,.mobile-home-description{font-family:var(--font-reading);font-size:var(--type-introduction);font-weight:400;line-height:1.55;letter-spacing:normal;color:var(--body)}
.essay-page .article-header h1{font-family:var(--font-editorial);font-weight:400;color:var(--ink)}
.essay-page .article-header .article-meta{display:block;margin:20px auto 0;font-family:var(--font-interface);font-size:14px;font-weight:400;font-style:normal;line-height:1.6;letter-spacing:normal;color:var(--muted);text-wrap:pretty}
.essay-page .article-header .article-meta span{margin-inline:3px}
.essay-page .article-subtitle,.essay-page .essay-deck{font-family:var(--font-editorial);font-weight:400;font-style:italic;color:var(--muted)}
.subscribe-quotes blockquote,.newsletter-endorsement blockquote,.plp-quote{font-family:var(--font-reading);font-weight:400;font-style:normal;color:var(--body)}
.testimonial,.essay-gate,.essay-gate-modal,.homepage .desktop-newsletter-panel{background:var(--paper);box-shadow:none;border-radius:0}
/* Wall of Love: transparent, single-column endorsements with source context. */
.testimonial-context{margin:0;font-family:var(--font-interface);font-size:13px;line-height:1.5;color:var(--muted)}
.testimonial-context a{display:inline-block;margin-left:.3em;white-space:nowrap;text-underline-offset:3px}
.testimonials{display:flex;flex-direction:column;gap:48px}
.testimonials .testimonial{display:flex;flex-direction:column;gap:18px;padding:0;margin:0;border:0;background:transparent;box-shadow:none}
.testimonials .testimonial blockquote{font-family:var(--font-reading);font-size:var(--type-introduction);font-weight:400;font-style:italic;line-height:1.55;letter-spacing:normal;color:var(--body);margin:0}
.testimonials .testimonial-person{display:flex;align-items:center;gap:14px;margin:0}
.testimonial-avatar{display:block;flex:none;width:52px;height:52px;border-radius:50%;overflow:hidden;background:transparent}
.testimonial-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.testimonial-avatar-sahil img{object-position:center;transform:none}
.testimonial-avatar-jenny img{object-position:center;transform:none}
.testimonial-avatar-brad img{object-position:45% 50%;transform:scale(1.6);transform-origin:50% 5%}
.testimonial-attribution{min-width:0}
.testimonial-name-row{display:flex;align-items:center;gap:5px}
.testimonials .testimonial-bio{margin:0;font-family:var(--font-interface);font-size:13px;font-weight:400;line-height:1.5;color:var(--muted);text-wrap:pretty}
.testimonial-bio cite{font-style:italic}
.testimonials .testimonial-name{font-family:var(--font-interface);font-size:16px;line-height:1.4;font-weight:400;color:var(--ink);margin:0}
.testimonial-profile{display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;min-height:32px;padding:0;border:0;color:#0a66c2;text-decoration:none}
.testimonial-profile svg{display:block;flex:none}
.testimonial-profile:hover{color:#004182}
.testimonial-profile:focus-visible{outline:2px solid #0a66c2;outline-offset:2px}
@media(max-width:620px){
 .essay-page .article-header .article-meta{font-size:13px}
 .page-heading h1{line-height:1.12}
 .testimonials{gap:36px}
 .testimonials .testimonial blockquote{font-size:var(--type-reading)}
 .testimonial-profile{min-height:44px}
 .testimonials .testimonial-person{gap:12px}
}
.essay-reading-progress{position:fixed;inset:0 0 auto;height:3px;background:#000;transform:scaleX(0);transform-origin:left center;pointer-events:none;z-index:1000}
.essay-reading-progress[hidden]{display:none}
@media print{.essay-reading-progress{display:none}}
/* Shared public surfaces: white paper, neutral controls, consistent navigation. */
@media(min-width:621px){.site-nav{font-size:13px;letter-spacing:.08em;text-transform:uppercase}}
.comments{background:#fff;border-color:var(--rule);margin-top:32px;padding-top:32px}
.essay-page .comments{box-sizing:border-box;width:100%;max-width:728px;margin-inline:auto}
.comments[hidden]{display:none}
.comments .comments-heading h2{font-family:var(--font-editorial);font-size:26px;font-weight:400;line-height:1.25;letter-spacing:-.01em;text-transform:none;margin:0;color:var(--ink)}
.comments .comments-heading p,.comments .comment-meta,.comments .comment-status,.comments .comment-form-foot{font-family:var(--font-interface);color:var(--muted)}
.comments .reader-comment p,.comments .justin-reply p{font-family:var(--font-reading);font-size:18px;line-height:1.65;color:var(--body);white-space:pre-wrap;overflow-wrap:anywhere}
.comments .comment-form{display:grid;gap:22px}
.comments .comment-form label{font-family:var(--font-interface);font-size:15px;color:var(--body)}
.comments .comment-form :is(input,textarea){box-sizing:border-box;width:100%;background:#fff;border:1px solid var(--rule);border-radius:0;box-shadow:none;color:var(--ink);font-family:var(--font-interface);font-size:16px;line-height:1.5}
.comments .comment-form textarea{display:block;min-height:132px;resize:vertical;margin-top:8px}
.comments .comment-form-foot button{min-height:48px;padding:12px 22px;background:var(--ink);border:1px solid var(--ink);border-radius:0;color:#fff;font-family:var(--font-interface);font-size:16px;cursor:pointer}
.comments .comment-form-foot button:hover{background:#34342e;border-color:#34342e;color:#fff}
.comments .comment-form :is(input,textarea,button):focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.comments .comment-form.is-complete > :not(.comment-status){display:none}
.comments .comment-status.is-error{color:#9d3f36}
.comments .comment-form-foot{display:flex;align-items:center;justify-content:flex-start;gap:24px;margin-top:8px}
.comments .comment-form-foot p{flex:1;max-width:none;margin:0;font-size:13px;line-height:1.5;text-wrap:pretty}
.comments .comment-form-foot button{flex:none}
.essay-page .comments + .essay-footer{margin:56px auto 0}
@media(min-width:621px){.essay-page:not(.homepage) .comments + .essay-footer{margin-top:0}}
@media(max-width:620px){.comments .comment-form-foot{align-items:flex-start;flex-direction:column;gap:14px}.essay-page .comments + .essay-footer{margin-top:48px}}
.plp-testimonials,.plp-mid-cta,.plp-quote{background:#fff;box-shadow:none}
.plp-quote{border:0;border-radius:0}
.masterclass-sale-bar,.course-facts{background:var(--ink);color:#fff}
.masterclass-sale-bar .sale-bar-buy{background:#fff;color:var(--ink);border-color:#fff;border-radius:0}
.masterclass-sale-bar .sale-bar-buy:hover{background:#f5f5f3;border-color:#f5f5f3}
.reader-survey button{background:#fff;border-color:var(--rule);border-radius:0;color:var(--ink)}
.reader-survey button:hover:not(:disabled){background:#f5f5f3;border-color:var(--ink)}
.reader-survey button:focus-visible{outline-color:var(--ink)}
.reader-survey.survey-done{background:#fff;border:1px solid var(--rule);border-radius:0}
.reader-survey .survey-pitch-sale{color:var(--ink);background:#fff;border:1px solid var(--rule);border-radius:0}
.quiet-newsletter button:hover,.contact-form button:hover{background:#34342e;color:#fff}

/* Complete reader layout: one presentation for the full essay archive. */
.essay-page .page-stack{display:block}
.essay-page .article-back{display:flex;align-items:center;width:max-content;font-family:var(--font-interface);font-size:12.16px;line-height:1.55;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--muted);margin:0 0 54px}
.essay-page .article-header{display:block;text-align:center;max-width:820px;margin:0 auto 64px;padding:0;border:0}
.essay-page .article-header h1,.essay-page .article-header h1[data-heading-length="long"]{font-family:var(--font-editorial);font-size:clamp(43.2px,6vw,76.8px);font-weight:400;line-height:1;letter-spacing:-.045em;margin:0 0 28px;text-wrap:balance}
.essay-page .article-header .heading-ending{display:inline}
.essay-page .article-subtitle{max-width:640px;margin:0 auto;font-family:var(--font-editorial);font-size:21.6px;font-style:italic;font-weight:400;line-height:1.55;color:var(--muted);text-wrap:pretty}
.essay-page .article-rule{width:76px;height:1px;background:var(--ink);margin:36px auto 0}
.essay-page .article-body{display:block;box-sizing:border-box;max-width:728px;margin:0 auto}
.essay-page .article-body p{margin:0 0 20px}
.essay-page .article-body img{max-width:100%;height:auto}
.essay-page .article-body [hidden]{display:none!important}
.essay-page .essay-footer{max-width:728px;margin:56px auto 0}
.legal-body :is(h2,h3,h4){font-family:var(--font-editorial);font-weight:400;color:var(--ink);line-height:1.25;letter-spacing:-.01em}
.legal-body h2{font-size:26px}
.legal-body h3{font-size:22px}
@media(min-width:621px){
 .essay-page:not(.homepage) .journal-page{width:min(100%,1100px);padding:64px 28px 120px}
 .essay-page:not(.homepage) .site-nav{max-width:700px;margin:0 auto 52px}
}
@media(max-width:620px){
 .essay-page:not(.homepage) .journal-page{padding-top:16px}
 .essay-page:not(.homepage) .site-nav{margin-bottom:24px}
 .resource-list .resource-link{display:block;padding:0}
 .resource-list .resource-link>img{display:none}
 .resource-list{gap:36px}
 .resource-list .resource-link h3{font-size:26px;line-height:1.25;margin:8px 0 12px}
}
/* A quieter course page; existing pricing and enrollment behavior is retained. */
.course-page{max-width:960px;margin-inline:auto}
.course-page .plp-hero{padding:36px 0 44px}
.course-page .plp-hero-inner{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:center}
.course-page .plp-title{font-family:var(--font-editorial);font-size:56px;line-height:1.08;letter-spacing:-.035em;font-weight:400;margin:20px 0 24px}
.course-page .plp-lede{font-size:20px;line-height:1.55;max-width:620px}
.course-page .plp-cta,.masterclass-sale-bar .plp-cta{border-radius:0;padding:12px 22px;font-size:16px;line-height:1.5;background:var(--ink);border:1px solid var(--ink);color:#fff}
.course-page .plp-fine{font-size:14px}
.course-page .course-facts{box-sizing:border-box;max-width:728px;background:#fff;color:var(--muted);border:0;margin:0 auto;padding:16px 0 0;justify-content:space-between}
.course-page .course-facts p{font-family:var(--font-interface);font-size:14px}
.course-page .course-facts span{font-family:var(--font-editorial);color:var(--ink);font-size:28px}
.course-page .plp-section{padding:0;margin:72px auto;background:#fff}
.course-page .plp-narrow{max-width:728px;padding:0;margin-inline:auto}
.course-page .plp-section-title,.course-page .plp-final-title{font-size:34px;line-height:1.2;letter-spacing:-.025em;margin:0 0 24px}
.course-page .plp-body{font-size:19px;line-height:1.65}
.course-page .plp-module-title{font-family:var(--font-editorial);font-size:24px}
.course-page .plp-module-subtitle{font-size:17px}
.course-page .plp-quote-grid{gap:32px}
.course-page .plp-quote p{font-size:19px}
.course-page .plp-quote{padding:0;border:0}
.course-page .plp-mid-cta{border:0}
.course-page .masterclass-pricing-amount{font-family:var(--font-editorial);font-size:48px}
.course-page .course-product-render{width:300px;justify-self:center}
.course-page .course-product-render img{display:block;width:100%;height:auto;max-width:none;filter:none}
.masterclass-sale-bar{background:#fff;color:var(--ink);border-bottom:1px solid var(--rule)}
.masterclass-sale-bar .sale-bar-buy{background:var(--ink);color:#fff}
@media(max-width:1000px){
 .course-page .plp-hero-inner{grid-template-columns:minmax(0,1fr) 250px;gap:36px}
 .course-page .course-product-render{width:250px}
 .course-page .plp-title{font-size:48px}
}
@media(max-width:620px){
 .course-page .plp-hero{padding:0 0 32px}
 .course-page .plp-hero-inner{display:block}
 .course-page .plp-title{font-size:34px}
 .course-page .course-product-render{width:230px;max-width:80%;margin:36px auto 0}
 .course-page .course-facts{gap:14px;padding-top:0}
 .course-page .course-facts p{font-size:12px}
 .course-page .course-facts span{display:block;padding:0;font-size:26px}
 .course-page .plp-section{margin:48px auto}
 .course-page .plp-section-title,.course-page .plp-final-title{font-size:28px}
 .course-page .plp-modules,.course-page .plp-quote-grid{grid-template-columns:1fr}
}

.essay-page:not(.homepage) .comments + .essay-footer{margin-top:56px}
@media(max-width:620px){.essay-page:not(.homepage) .comments + .essay-footer{margin-top:48px}}

.essay-page .article-back{width:min(100%,700px);margin:0 auto 54px}
.essay-page .gate-reopen{display:block;width:max-content;max-width:100%;margin:36px auto 0;font-family:var(--font-interface);font-size:16px;line-height:1.5;padding:0}

@media(max-width:620px){.journal-page:not(.panel-page){padding-top:16px}}

/* Quiet commenter and author names without changing the date or body. */
.comments .comment-meta strong { font-weight: 500; }
