/* Hide only the theme's title metadata, including on learning package pages. */
body.single .hero-section .entry-meta,
body.single .entry-header > .entry-meta,
.elc-hidden-hero-meta { display: none !important; }

body.single-post {
  --theme-narrow-container-max-width: 1040px;
  --theme-content-width: min(1040px, calc(100% - 48px));
  --wp--style--global--content-size: 1040px;
  background: #fff !important;
}
body.single-post #main,
body.single-post .site-main > [data-content],
body.single-post article.type-post,
body.single-post .ct-comments-container { background: #fff; }
body.single-post #main > [data-content="narrow"] {
  --theme-narrow-container-max-width: 1040px;
  --theme-content-width: min(1040px, calc(100% - 48px));
}
body.single-post .hero-section.is-width-constrained,
body.single-post article.type-post > .entry-content > :where(:not(.alignfull):not(.alignwide)),
body.single-post .ct-comments-container > .ct-container-narrow {
  width: min(1040px, calc(100% - 48px));
  max-width: 1040px;
  margin-inline: auto;
}
body.single-post .hero-section { padding-top: 32px; margin-bottom: 32px; }
body.single-post .entry-content { color: #303640; font-size: 17px; line-height: 1.85; }
body.single-post .entry-content p { margin-block: 0 1.4em; }
body.single-post .entry-content :is(img,video,iframe) { max-width: 100%; }
body.single-post .entry-content .wp-block-table { overflow-x: auto; }
body.single-post .page-title { color: #202124; line-height: 1.3; }

/* Comments use native WordPress labels and submission, with no decorative icons. */
body.single-post .ct-comments { color: #34363b; padding-block: 32px 64px; }
body.single-post .ct-comments-container { margin-top: 48px; border-top: 1px solid #ececef; }
body.single-post .elc-comments-toggle-row { padding-top: 12px; margin-block: 0; }
body.single-post .elc-comments-toggle {
  background: transparent; color: #62656c; border: 0; padding: 6px 0;
  min-height: 32px; font-size: 13px; box-shadow: none;
}
body.single-post :is(.ct-comments-title,#reply-title) { font-size: 24px; font-weight: 600; letter-spacing: -.4px; margin-bottom: 16px; }
body.single-post .comment-form { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
body.single-post .comment-form > p { margin: 0; }
body.single-post .comment-form > :not(.comment-form-field-input-author):not(.comment-form-field-input-email):not(.comment-form-field-input-url) { grid-column: 1 / -1; }
body.single-post .comment-form label { display: block; margin-bottom: 9px; font-size: 14px; font-weight: 500; color: #40434a; }
body.single-post .comment-form :is(input[type="text"],input[type="email"],input[type="url"],textarea) {
  width: 100%; background: #f7f7f8; color: #25272c; border: 1px solid transparent;
  border-radius: 10px; box-shadow: none; padding: 13px 15px; font: inherit;
  transition: border-color .15s, background .15s, box-shadow .15s;
}
body.single-post .comment-form textarea { min-height: 160px; resize: vertical; line-height: 1.65; }
body.single-post .comment-form :is(input,textarea):focus {
  background: #fff; border-color: #8c9fb8; outline: none; box-shadow: 0 0 0 3px #eaf0f7;
}
body.single-post .comment-form :is(.logged-in-as,.comment-notes,.comment-form-cookies-consent) { color: #757880; font-size: 13px; line-height: 1.7; }
body.single-post .comment-form .logged-in-as a { color: #505967; }
body.single-post .comment-form .required { color: #a84040; }
body.single-post .comment-form .submit {
  background: #25272c; color: #fff; border: 0; border-radius: 9px;
  padding: 12px 23px; min-height: 44px; font-size: 14px; font-weight: 600; box-shadow: none;
}
body.single-post .comment-form .submit:hover { background: #42454b; }
body.single-post .comment-form .submit:focus-visible { outline: 3px solid #a6bad6; outline-offset: 3px; }
body.single-post .comment-form-cookies-consent label { display: inline; font-weight: 400; }
body.single-post .ct-comment-inner { padding-block: 28px; border-color: #ececef; }
body.single-post .ct-comment-author { color: #25272c; font-size: 15px; font-weight: 600; }
body.single-post .ct-comment-meta-data { color: #82858b; text-transform: none; letter-spacing: 0; font-size: 12px; }
body.single-post .ct-comment-content { line-height: 1.75; }
body.single-post .comment-reply-link { background: #f3f3f5; color: #555b65; border-radius: 6px; font-size: 12px; }
body.single-post .ct-comments svg,
body.single-post .ct-comments .dashicons { display: none; }
body.single-post .ct-comments-navigation a { gap: 0; }
@media (max-width: 600px) {
  body.single-post { --theme-content-width: calc(100% - 36px); }
  body.single-post .hero-section.is-width-constrained,
  body.single-post article.type-post > .entry-content > :where(:not(.alignfull):not(.alignwide)),
  body.single-post .ct-comments-container > .ct-container-narrow { width: calc(100% - 36px); }
  body.single-post .hero-section { padding-top: 24px; margin-bottom: 24px; }
  body.single-post .entry-content { font-size: 16px; line-height: 1.8; }
  body.single-post .comment-form { grid-template-columns: minmax(0,1fr); gap: 18px; }
  body.single-post .comment-form > * { grid-column: 1 !important; }
  body.single-post .ct-comments { padding-bottom: 40px; }
}
