/* Hypro custom single-post template — scoped under .hy-single */
.hy-single{--in:#0f1016;--ind:#2a2f83;--ind7:#23286f;--sl:#565a6b;--ln:#e7e8ef;--soft:#f6f7fb;--gold:#E8A21B}

/* ---- HERO ---- */
/* background-color is the fallback; Elementor sets the dynamic featured image as background-image
   (don't use the `background` shorthand here or it would override that image). */
.hy-single .sp-hero{position:relative;overflow:hidden;background-color:var(--ind7);background-size:cover;background-position:center;padding:84px 0 64px}
/* dark overlay over the featured image (and fallback) so the title stays readable */
.hy-single .sp-hero::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(135deg,rgba(35,40,111,.90),rgba(15,16,22,.80))}
.hy-single .sp-hero::after{content:"";position:absolute;inset:0;z-index:1;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:radial-gradient(circle at 50% 0,#000,transparent 70%);mask-image:radial-gradient(circle at 50% 0,#000,transparent 70%);pointer-events:none}
.hy-single .sp-hero .wrap{position:relative;z-index:2;max-width:860px;margin:0 auto;padding:0 28px;text-align:center}
.hy-single .sp-bc{font-family:'Manrope',sans-serif;font-size:13px;font-weight:600;color:#aeb4f0;margin-bottom:20px;letter-spacing:.01em}
.hy-single .sp-bc a{color:#aeb4f0;text-decoration:none}
.hy-single .sp-bc a:hover{color:#fff}
/* category badge (post-info terms) */
.hy-single .sp-cat .elementor-post-info{justify-content:center}
.hy-single .sp-cat .elementor-post-info__item{display:inline-flex;align-items:center;font-family:'Manrope',sans-serif;font-weight:700;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:7px 15px;border-radius:999px}
.hy-single .sp-cat .elementor-post-info__item a{color:#fff;text-decoration:none}
.hy-single .sp-cat .elementor-icon-list-icon{display:none}
/* title */
.hy-single .sp-hero .elementor-heading-title{color:#fff;font-family:'Manrope',sans-serif;font-weight:800;font-size:clamp(30px,4vw,48px);line-height:1.16;letter-spacing:-.02em;margin:18px 0 0}
/* meta row (date) */
.hy-single .sp-meta{margin-top:18px}
.hy-single .sp-meta .elementor-post-info{justify-content:center;color:#c8cbeb;font-family:'Inter',sans-serif;font-size:14px}
.hy-single .sp-meta .elementor-post-info__item{color:#c8cbeb}
.hy-single .sp-meta .elementor-post-info__item a{color:#c8cbeb}
.hy-single .sp-meta .elementor-icon-list-icon{color:#9aa0f3}

/* ---- BODY / ARTICLE ---- */
.hy-single .sp-body{padding:64px 0 72px;background:#fff}
.hy-single .sp-body .wrap{max-width:760px;margin:0 auto;padding:0 28px}
.hy-single .sp-body .elementor-widget-theme-post-content{font-family:'Inter',sans-serif;color:#3b3f50;font-size:17px;line-height:1.82}
.hy-single .sp-body .elementor-widget-theme-post-content > *{margin-bottom:22px}
.hy-single .sp-body h2{font-family:'Manrope',sans-serif;color:var(--in);font-weight:800;font-size:30px;line-height:1.2;letter-spacing:-.02em;margin:40px 0 14px}
.hy-single .sp-body h3{font-family:'Manrope',sans-serif;color:var(--in);font-weight:800;font-size:22px;line-height:1.25;margin:32px 0 12px}
.hy-single .sp-body p{margin-bottom:22px}
.hy-single .sp-body a{color:var(--ind);text-decoration:underline;text-underline-offset:2px}
.hy-single .sp-body ul,.hy-single .sp-body ol{margin:0 0 22px 1.2em;display:flex;flex-direction:column;gap:8px}
.hy-single .sp-body li{line-height:1.7}
.hy-single .sp-body img{border-radius:14px;margin:8px 0}
.hy-single .sp-body blockquote{border-left:3px solid var(--ind);background:var(--soft);padding:18px 24px;border-radius:0 12px 12px 0;font-size:18px;color:var(--in)}

/* ---- RELATED / MORE ARTICLES ---- */
.hy-single .sp-related{background:var(--soft);padding:70px 0}
.hy-single .sp-related .wrap{max-width:1140px;margin:0 auto;padding:0 28px}
.hy-single .sp-rel-h .elementor-heading-title{font-family:'Manrope',sans-serif;color:var(--in);font-weight:800;font-size:clamp(24px,3vw,34px);text-align:center;letter-spacing:-.02em;margin-bottom:36px}
.hy-single .sp-related .elementor-posts{gap:26px}
.hy-single .sp-related .elementor-post{background:#fff;border:1px solid var(--ln);border-radius:16px;overflow:hidden;transition:transform .3s,box-shadow .3s;padding:26px 24px}
.hy-single .sp-related .elementor-post:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(15,16,22,.12);border-color:transparent}
.hy-single .sp-related .elementor-post__thumbnail{display:none}
.hy-single .sp-related .elementor-post__title{font-family:'Manrope',sans-serif;font-weight:800;font-size:18px;line-height:1.35;margin:0 0 12px}
.hy-single .sp-related .elementor-post__title a{color:var(--in);text-decoration:none}
.hy-single .sp-related .elementor-post:hover .elementor-post__title a{color:var(--ind)}
.hy-single .sp-related .elementor-post__meta-data{font-family:'Inter',sans-serif;font-size:13px;color:var(--sl)}
.hy-single .sp-related .elementor-post__read-more{font-family:'Manrope',sans-serif;font-weight:700;font-size:13.5px;color:var(--ind);text-decoration:none}

/* ---- CTA BAND ---- */
.hy-single .sp-cta{background:linear-gradient(135deg,var(--ind7),#363cae);padding:64px 0}
/* Clean centered CTA: heading centered, buttons centered below.
   (Elementor flex widgets fight a left/right split, so center is the reliable layout.) */
.hy-single .sp-cta .wrap{max-width:760px;margin:0 auto;padding:0 28px;display:flex !important;flex-direction:column;align-items:center;text-align:center;gap:24px}
.hy-single .sp-cta .elementor-widget-heading{margin:0;width:100%}
.hy-single .sp-cta .elementor-heading-title{color:#fff;font-family:'Manrope',sans-serif;font-weight:800;font-size:clamp(24px,2.8vw,34px);line-height:1.2;letter-spacing:-.02em;text-align:center}
.hy-single .sp-cta-actions{display:flex !important;flex-direction:row;gap:13px;flex-wrap:wrap;justify-content:center}

/* hide auto-excerpt on related cards (posts have placeholder bodies for now) */
.hy-single .sp-related .elementor-post__excerpt{display:none}
.hy-single .sp-related .elementor-post__text{padding:0}
