/* co404.com blog posts — shared by every /<post>/ page. Generated by scripts/co404-blog-polish.js. */
.co404-post-hero{position:relative;background-color:#3B2E28;background-size:cover;background-position:center;color:#FFF;padding:clamp(72px,12vw,150px) 24px 44px;box-sizing:border-box;display:flex;align-items:flex-end;min-height:clamp(300px,42vw,460px)}
.co404-post-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,22,18,.18) 0%,rgba(30,22,18,.42) 45%,rgba(30,22,18,.86) 100%)}
.co404-post-hero-inner{position:relative;width:100%;max-width:820px;margin:0 auto}
.co404-post-eyebrow{font-family:'Montserrat',sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#EFCDB9;margin:0 0 14px}
.co404-post-title{font-family:'Montserrat',sans-serif;font-size:clamp(1.75rem,4.2vw,3rem);font-weight:600;line-height:1.15;letter-spacing:-.01em;text-transform:none;text-wrap:balance;margin:0;color:#FFF}
.co404-post-meta{font-family:'Roboto',Helvetica,Arial,sans-serif;font-size:.95rem;color:rgba(255,255,255,.88);margin:18px 0 0;display:flex;align-items:center;flex-wrap:wrap;gap:0 10px}
.co404-post-meta-sep::before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:#EFCDB9;vertical-align:middle}
.co404-post-body{background:#F7F5F4;padding:0 0 70px!important;box-sizing:border-box}
.co404-post-body>div,.co404-post-body .elementor-widget-theme-post-content{max-width:820px!important;margin:0 auto!important;padding:28px 22px 36px!important;box-sizing:border-box;font-family:'Roboto',Helvetica,Arial,sans-serif;color:#3D2F2F;font-size:18px;line-height:1.8}
.co404-post-body p{font-family:'Roboto',Helvetica,Arial,sans-serif;color:#3D2F2F;font-size:18px;line-height:1.8;margin:0 0 1.3em}
.co404-post-body h2,.co404-post-body h3,.co404-post-body h4{font-family:'Montserrat','Roboto',Helvetica,sans-serif;color:#AF726B;line-height:1.3;font-weight:700;text-wrap:balance}
.co404-post-body h2{font-size:30px;margin:1.9em 0 .5em}
.co404-post-body h3{font-size:22px;margin:1.6em 0 .4em}
.co404-post-body h4{font-size:19px;margin:1.4em 0 .4em}
.co404-post-body ul,.co404-post-body ol{margin:0 0 1.3em;padding-left:1.4em}
.co404-post-body li{margin:0 0 .5em;line-height:1.7}
.co404-post-body a:not([class]){color:#9B3A3A;text-decoration:underline;text-decoration-color:rgba(155,58,58,.4);text-underline-offset:3px}
.co404-post-body a:not([class]):hover{text-decoration-color:#9B3A3A}
.co404-post-body img,.co404-post-body figure{max-width:100%;height:auto}
.co404-post-body figure{margin:1.5em 0 2em}
.co404-post-body figure img{display:block;width:100%;border-radius:8px}
.co404-post-body figcaption{font-size:.85rem;color:#8B7A6B;margin-top:8px}
.co404-post-body blockquote{margin:1.6em 0;padding:4px 0 4px 20px;border-left:3px solid #C58C72;color:#5A4A44;font-style:italic}
.co404-post-body .e-con-inner{max-width:none;padding:0}
.co404-post-body .elementor-element.e-con{--padding-top:0;--padding-bottom:0;padding:0}
.co404-post-cta{text-align:center;margin:2.5em 0 1em}
.co404-post-body .co404-post-cta a{display:inline-block;background-color:#9B3A3A;color:#fff;font-family:'Montserrat','Roboto',sans-serif;font-size:16px;font-weight:600;padding:14px 32px;border-radius:50px;text-decoration:none;letter-spacing:0.5px}
.co404-post-body .co404-post-cta a:hover{background-color:#B37775;color:#fff}
/* The share icons + comments block sits in a flex column; margin:auto on the comments made it
   shrink to its content (a 210px form). Full width, same column as the article. */
.co404-boxed{max-width:none!important;padding:40px 22px 56px!important}
.co404-boxed>*{width:100%;max-width:776px;margin-left:auto!important;margin-right:auto!important;align-self:center}
.co404-boxed .co404-comments{margin-top:16px;margin-bottom:0;padding:0}
.co404-boxed .co404-comment-form input,.co404-boxed .co404-comment-form textarea{width:100%;box-sizing:border-box}
/* Gallery lightbox base rules: the post pages never carried them, so the hidden prev/next
   buttons sat in the page margins while the lightbox was closed. */
.co404-lightbox{display:none;position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:1000;justify-content:center;align-items:center;padding:24px}
.co404-lightbox.open{display:flex}
.co404-lightbox img{max-width:92vw;max-height:88vh;object-fit:contain;border-radius:8px}
.co404-lightbox-close{position:absolute;top:16px;right:20px;background:rgba(255,255,255,.1);color:#FFF;border:none;width:44px;height:44px;border-radius:50%;font-size:1.6rem;cursor:pointer}
.co404-lightbox-prev,.co404-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.1);color:#FFF;border:none;width:44px;height:44px;border-radius:50%;font-size:1.6rem;cursor:pointer}
.co404-lightbox-prev{left:16px}
.co404-lightbox-next{right:16px}
.co404-lightbox-count{position:absolute;top:20px;left:50%;transform:translateX(-50%);color:#FFF;font-family:'Montserrat',sans-serif;font-size:.9rem}
@media (max-width:767px){
  .co404-post-hero{padding:64px 18px 32px;min-height:0}
  .co404-post-body{padding:0 0 48px!important}
  .co404-post-title{font-size:1.7rem}
  .co404-post-body>div,.co404-post-body .elementor-widget-theme-post-content{padding:22px 18px 30px!important;font-size:17px}
  .co404-post-body p{font-size:17px}
  .co404-post-body h2{font-size:25px}
  .co404-post-body h3{font-size:20px}
}
