/*
Theme Name: HEC
Description: Lightweight custom theme for Human Education Centre. Replaces Elementor (header/footer/front page/single/archive/search templates) with native WordPress templates and vanilla CSS. No page-builder dependency.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v3 or later.
Text Domain: hec
*/

/* ============ Base (matches Elementor Kit #242: Poppins) ============ */
:root{
  --hec-text:#1B1B1C;
  --hec-muted:#8a8a8a;
  --hec-accent:#02d1ae;
  --hec-purple:#4632da;
  --hec-cyan:#00dafc;
  --hec-border:#e2e2e2;
  --hec-max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--hec-text);background:#fff;font-size:16px;font-weight:300;line-height:32px;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3,h4{font-family:"Poppins",sans-serif;color:#1B1B1C;line-height:1.3;margin:0 0 .6em}
.hec-container{max-width:var(--hec-max);margin:0 auto;padding-left:20px;padding-right:20px}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ============ Header (matches Elementor Header #419) ============ */
.hec-header{background:#fff}
.hec-logo{text-align:center;padding:50px 20px 40px}
.hec-logo img{width:161px;height:auto}
.hec-nav{border-top:1px dotted #8e8e8e;border-bottom:1px dotted #8e8e8e;background:#fff;position:sticky;top:0;z-index:500}
.hec-nav-inner{max-width:var(--hec-max);margin:0 auto;padding:0 20px;display:flex;justify-content:center}
.hec-menu-toggle-checkbox{display:none}
.hec-menu-toggle-label{display:none;cursor:pointer;padding:12px 0;font-size:15px}
ul.hec-menu{list-style:none;margin:0;padding:0;display:flex;justify-content:center;flex-wrap:wrap}
ul.hec-menu>li{position:relative}
ul.hec-menu>li>a{display:block;padding:16px 41px;text-decoration:none;font-size:15px;font-weight:400;color:#303030;border-top:2px solid transparent;border-bottom:2px solid transparent}
ul.hec-menu>li.current-menu-item>a,ul.hec-menu>li.current_page_item>a{border-top-color:var(--hec-accent);border-bottom-color:var(--hec-accent)}
ul.hec-menu>li>a:hover{color:var(--hec-accent)}
ul.hec-menu li ul{list-style:none;margin:0;padding:8px 0;display:none;position:absolute;left:0;top:100%;min-width:230px;background:#fff;border:1px solid var(--hec-border);box-shadow:0 10px 30px rgba(0,0,0,.12);z-index:200}
ul.hec-menu li:hover>ul,ul.hec-menu li:focus-within>ul{display:block}
ul.hec-menu li ul li{position:relative}
ul.hec-menu li ul a{display:block;padding:9px 18px;font-size:14px;text-decoration:none;color:#303030;white-space:nowrap}
ul.hec-menu li ul a:hover{background:#f6f6f6;color:var(--hec-accent)}
ul.hec-menu li ul ul{left:100%;top:0}
ul.hec-menu>li.menu-item-has-children>a::after{content:"\25BE";font-size:11px;margin-left:8px}
ul.hec-menu li ul li.menu-item-has-children>a::after{content:"\25B8";font-size:11px;margin-left:8px;float:right}

/* ============ Front page sections ============ */
.hec-section{padding:30px 0}
.hec-section-title{font-size:26px;font-weight:700;margin:0;color:#1B1B1C}
/* Hero (Elementskit image-card look) */
.hec-hero{border-radius:4px;overflow:hidden;position:relative;background-size:cover;background-position:center center;color:#fff;margin-top:6px}
.hec-hero::after{content:"";position:absolute;inset:0;background:#000;opacity:.4;border-radius:4px}
.hec-hero-inner{position:relative;z-index:2;padding:40px}
.hec-hero-spacer{height:184px}
.hec-hero-badge{display:inline-block;background:#ECE7FE;color:#917BBC;font-family:"Poppins",sans-serif;font-size:16px;font-weight:500;line-height:24px;padding:4px 16px;border-radius:4px;margin-bottom:16px;text-decoration:none}
.hec-hero-title{margin:0 16px 16px 0;max-width:640px;font-size:32px;line-height:48px;font-weight:700;color:#fff}
.hec-hero-title a{color:#fff;text-decoration:none}
.hec-btn{display:inline-block;background:#2F2F2F;color:#fff;font-family:"Poppins",sans-serif;font-size:16px;font-weight:500;line-height:24px;text-decoration:none;padding:16px 40px;border-radius:4px;border:0}
.hec-btn:hover{background:#373737}
/* Head row (title + link button) */
.hec-headrow{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:6px 0 26px}
.hec-outline-btn{display:inline-block;background:transparent;border:1px solid #8D8D91;color:#2F2F2F;font-family:"Poppins",sans-serif;font-size:15px;text-decoration:none;padding:12px 34px;border-radius:4px;white-space:nowrap}
.hec-outline-btn:hover{background:#373737;border-color:#373737;color:#fff}
/* Home cards grid (Elementor Posts cards skin) */
.hec-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 30px}
.hec-card{border:1px solid #c9cbd1;border-radius:4px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.hec-card-media{position:relative;aspect-ratio:3/2;overflow:hidden;background:#eee}
.hec-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.hec-card-badge{position:absolute;top:0;right:0;margin:20px;background:rgba(90,95,110,.9);color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.4px;padding:5px 12px;border-radius:20px;text-decoration:none}
.hec-card-body{padding:0 16px;flex:1}
.hec-card-title{font-size:15px;line-height:22px;font-weight:600;margin:0 0 12px;text-transform:none}
.hec-card-title a{text-decoration:none;color:#1a1a1a}
.hec-card-title a:hover{color:var(--hec-purple)}
.hec-readmore{font-size:12px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;text-decoration:none;color:#1a1a1a}
.hec-readmore:hover{color:var(--hec-purple)}
.hec-card-meta{padding:10px 16px;font-size:12px;color:var(--hec-muted);border-top:1px solid #eee;margin-top:8px}
.hec-card-meta a{color:var(--hec-muted);text-decoration:none}
.hec-hr{border:0;border-top:1px solid #CBCBCD;margin:26px 0 30px}
/* Category tiles */
.hec-grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.hec-tile{position:relative;min-height:300px;border-radius:2px;overflow:hidden;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:flex-end;padding:18px 16px;color:#fff;text-decoration:none}
.hec-tile::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.4)}
.hec-tile>*{position:relative;z-index:2}
.hec-tile h3{font-family:"Poppins",sans-serif;font-size:20px;font-weight:600;margin:0 0 8px;color:#fff}
.hec-tile span{font-size:15px;font-weight:500}
.hec-tile span i{font-style:normal;margin-left:16px;font-size:14px}
/* Popular */
.hec-popular{display:grid;grid-template-columns:7fr 5fr;gap:40px;align-items:start}
.hec-pop-item{display:grid;grid-template-columns:56px 1fr;gap:8px;padding:22px 0}
.hec-pop-num{color:#CBCBCD;font-size:22px;font-weight:700}
.hec-pop-title{font-size:19px;font-weight:700;margin:0;line-height:1.45;color:#141414}
.hec-pop-title a{text-decoration:none;color:#141414}
.hec-pop-title a:hover{color:var(--hec-purple)}
.hec-pop-side{text-align:end}
.hec-pop-side img{border-radius:4px;width:90%;height:496px;object-fit:cover;display:inline-block}

/* ============ Single post (matches Elementor Single Post #459) ============ */
.hec-single-hero{position:relative;background-color:transparent;background-image:linear-gradient(130deg,#FFFFFF 0%,#C4C4C4 89%);text-align:center;padding:0 5% 150px;overflow:hidden}
.hec-single-hero::before{content:"";position:absolute;inset:0;background-image:url('/wp-content/uploads/2023/02/Post-BG.png');background-position:center center;background-repeat:no-repeat;background-size:cover;opacity:.15;pointer-events:none}
.hec-single-hero-inner{position:relative;z-index:2;max-width:750px;margin:0 auto;min-height:500px;display:flex;flex-direction:column;justify-content:center;padding:40px 50px 0}
.hec-single-title{font-family:"Varela Round",sans-serif;font-size:45px;font-weight:300;line-height:1.2;text-transform:capitalize;color:#000;margin:0 0 24px}
.hec-single-meta{font-family:"Montserrat",sans-serif;font-size:16px;font-weight:300;color:#000;display:flex;align-items:center;justify-content:center;gap:25px}
.hec-single-meta a{color:#000;text-decoration:none}
.hec-single-meta .sep{width:1px;align-self:stretch;background:#000}
.hec-single-waves{display:block;position:absolute;bottom:-1px;left:50%;width:260%;height:120px;transform:translateX(-50%) scaleY(-1);z-index:2;pointer-events:none}
.hec-single-waves path{fill:#fff}
.hec-single-body{max-width:750px;margin:-120px auto 0;position:relative;z-index:3;padding:0}
.hec-featured{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 0 20px rgba(0,0,0,.2)}
.hec-featured img{width:100%;display:block}
.hec-share-row{margin:19px 0 0;padding:20px 0;border-top:1px solid rgba(159,163,173,.2);border-bottom:1px solid rgba(159,163,173,.2);display:flex;align-items:center;justify-content:space-between;gap:12px}
.hec-share-title{color:var(--hec-purple);font-family:"Varela Round",sans-serif;font-size:20px;font-weight:300;text-transform:capitalize}
.hec-share-icons{display:flex;gap:20px;margin-right:20px}
.hec-share-icons a{color:rgba(47,55,89,.7);font-size:20px;text-decoration:none;line-height:1}
.hec-share-icons a:hover{color:var(--hec-purple)}
.hec-share-icons svg{width:20px;height:20px}
.hec-content{margin:0;padding:26px 0 10px;font-size:16px;font-weight:300;line-height:32px;color:#1B1B1C}
.hec-content h2{font-size:34px;font-weight:700;margin:1.2em 0 .5em;color:#1B1B1C}
.hec-content h3{font-size:26px}
.hec-content img{border-radius:4px}
.hec-content a{color:#1a56db}
.hec-tags{margin:0;padding:0 0 10px;font-size:14px;color:var(--hec-muted);font-family:"Montserrat",sans-serif}
/* Newsletter box */
.hec-newsletter{position:relative;margin:80px auto;padding:60px 50px;text-align:center;border-radius:15px;box-shadow:0 0 25px rgba(0,0,0,.1);overflow:hidden;background:#fff}
.hec-newsletter::before{content:"";position:absolute;inset:0;background-image:url('/wp-content/uploads/2023/02/BG-Post-Sub.png');background-position:center center;background-repeat:no-repeat;background-size:cover;pointer-events:none}
.hec-newsletter>*{position:relative;z-index:2}
.hec-newsletter h2{font-family:"Varela Round",sans-serif;font-size:26px;font-weight:300;text-transform:capitalize;color:var(--hec-purple);margin:0 0 8px}
.hec-newsletter p{font-family:"Montserrat",sans-serif;font-size:16px;font-weight:300;text-transform:capitalize;color:#3d4459;margin:0 0 35px}
.hec-newsletter-form{display:flex;gap:0;justify-content:center;flex-wrap:nowrap;margin:0 -10px}
.hec-newsletter-field{flex:0 0 75%;padding:0 10px}
.hec-newsletter-btnwrap{flex:0 0 25%;padding:0 10px}
.hec-newsletter input[type=email]{width:100%;padding:13px 22px;border:1px solid #eaeaea;border-radius:30px;font-family:"Montserrat",sans-serif;font-size:15px;font-weight:300;color:#353535;background:#fff}
.hec-newsletter button{width:100%;background:var(--hec-cyan);color:#fff;border:0;border-radius:30px;padding:13px 10px;font-family:"Montserrat",sans-serif;font-size:15px;font-weight:500;text-transform:capitalize;cursor:pointer;white-space:nowrap}
.hec-newsletter button:hover{background:var(--hec-purple)}
.hec-form-note{font-family:"Montserrat",sans-serif;font-size:14px;margin-top:12px;color:#247a3d}
/* Post navigation */
.hec-postnav{margin:0 0 50px;padding:45px 0;display:flex;gap:0;border-top:1px solid rgba(159,163,173,.2);border-bottom:1px solid rgba(159,163,173,.2)}
.hec-postnav>span{width:calc(50% - 1px)}
.hec-postnav>span+span{border-left:1px solid rgba(159,163,173,.2);text-align:right}
.hec-postnav a{text-decoration:none}
.hec-postnav .nav-label{display:block;font-family:"Varela Round",sans-serif;font-size:16px;color:var(--hec-purple)}
.hec-postnav .nav-title{display:block;font-family:"Montserrat",sans-serif;font-size:18px;font-weight:300;color:#3d4459}
/* Related */
.hec-related{max-width:var(--hec-max);margin:0 auto;padding:10px 20px 50px}
.hec-related h2{font-family:"Varela Round",sans-serif;font-size:24px;font-weight:300;text-transform:capitalize;color:var(--hec-purple);margin-bottom:35px}
/* Comments (matches Elementor Post Comments look) */
.hec-comments{max-width:750px;margin:50px auto 0;padding:0 0 60px}
.hec-comments h3{font-family:"Poppins",sans-serif;font-size:22px;font-weight:600;color:#1B1B1C;margin:0 0 20px}
.hec-comments ol{list-style:none;margin:0 0 30px;padding:0}
.hec-comments ol li{border-top:1px solid rgba(159,163,173,.2);padding:20px 0}
.hec-comments .comment-author{font-family:"Poppins",sans-serif;font-size:15px;font-weight:600}
.hec-comments .comment-author img{border-radius:50%;margin-right:12px;vertical-align:middle}
.hec-comments .comment-metadata{font-family:"Montserrat",sans-serif;font-size:13px;color:#8D8D91;margin:6px 0 10px}
.hec-comments .comment-metadata a{color:#8D8D91;text-decoration:none}
.hec-comments .comment-content{font-size:16px;line-height:32px}
.hec-comments .reply a{font-family:"Montserrat",sans-serif;font-size:14px;font-weight:500;color:var(--hec-purple);text-decoration:none}
.hec-comments label{display:block;font-family:"Montserrat",sans-serif;font-size:14px;font-weight:400;color:#3d4459;margin:14px 0 6px}
.hec-comments input[type=text],.hec-comments input[type=email],.hec-comments input[type=url],.hec-comments textarea{width:100%;padding:12px 16px;border:1px solid #eaeaea;border-radius:4px;font-family:"Montserrat",sans-serif;font-size:15px;font-weight:300;color:#353535;background:#fff}
.hec-comments input[type=submit]{background:#2F2F2F;color:#fff;border:0;border-radius:4px;padding:12px 28px;font-family:"Poppins",sans-serif;font-size:16px;font-weight:600;cursor:pointer;margin-top:16px}
.hec-comments input[type=submit]:hover{background:#373737}
/* Page */
.hec-page{max-width:800px;margin:0 auto;padding:50px 20px 60px}
.hec-page-title{text-align:center;font-size:36px;font-weight:600;margin-bottom:26px}

/* ============ Archive / blog / search (matches Elementor Archive #490) ============ */
.hec-archive-wrap{max-width:1200px;margin:0 auto;padding:100px 20px 250px}
.hec-archive-grid{margin-top:35px}
.hec-grid-arch{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.hec-card-arch{border:0;border-radius:10px;overflow:hidden;background:#fff;display:flex;flex-direction:column;box-shadow:0 0 25px rgba(0,0,0,.08)}
.hec-card-arch .hec-card-media{aspect-ratio:10/6;border-radius:10px 10px 0 0}
.hec-card-arch .hec-card-badge{left:0;right:auto;margin:25px;background:var(--hec-purple);color:#fff;font-family:"Montserrat",sans-serif;font-size:11px;font-weight:400;text-transform:none;letter-spacing:0;padding:6px 14px;border-radius:5px}
.hec-card-arch .hec-card-body{padding:10px 50px 0}
.hec-card-arch .hec-card-title{font-family:"Varela Round",sans-serif;font-size:20px;font-weight:400;line-height:1.5;text-transform:capitalize;text-align:center;color:var(--hec-purple);margin:0 0 10px}
.hec-card-arch .hec-card-title a{color:var(--hec-purple)}
.hec-card-arch .hec-card-title a:hover{color:#3725b8}
.hec-card-arch .hec-card-meta{padding:10px 50px;color:rgba(61,68,89,.5);font-family:"Montserrat",sans-serif;font-size:14px;font-weight:400;text-align:center;border-top:1px solid rgba(61,68,89,.1);margin-top:20px}
.hec-card-arch .hec-card-meta a{color:rgba(61,68,89,.5)}
.hec-pagination{max-width:1200px;margin:0 auto;padding:26px 20px 60px;text-align:center;font-family:"Montserrat",sans-serif;font-size:16px;font-weight:500}
.hec-pagination .page-numbers{display:inline-block;padding:4px 8px;margin:0 12px;text-decoration:none;color:#3d4459}
.hec-pagination a.page-numbers:hover{color:var(--hec-purple)}
.hec-pagination .current{color:var(--hec-purple)}
.hec-blog-title{text-align:center;font-family:"Varela Round",sans-serif;font-size:32px;font-weight:400;color:var(--hec-purple);margin:0 0 10px}
/* Search */
.hec-search-form{display:flex;gap:10px;justify-content:center;margin:20px 0 30px}
.hec-search-form input[type=search]{width:min(480px,70%);padding:12px 14px;border:1px solid #cfcfcf;border-radius:4px;font-size:15px;font-family:"Montserrat",sans-serif}
.hec-search-form button{padding:12px 22px;background:#2b2b2b;color:#fff;border:0;border-radius:4px;cursor:pointer;font-family:"Poppins",sans-serif}

/* ============ Footer (matches Elementor Footer #453) ============ */
.hec-footer{background:linear-gradient(180deg,#ffffff 0%,#D4D4D4 100%);margin-top:30px}
.hec-footer-grid{max-width:var(--hec-max);margin:0 auto;padding:70px 20px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}
.hec-footer-col1{margin-right:80px}
.hec-footer-logo img{width:246px;max-width:100%}
.hec-social{display:flex;gap:12px;margin-top:0;padding-top:20px}
.hec-social a{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;background:rgba(120,115,115,.1);border-radius:6px;color:#000;text-decoration:none}
.hec-social a:hover{background:#fff;color:#001c38}
.hec-social svg{width:12px;height:12px;fill:currentColor}
.hec-footer h3{font-size:18px;font-weight:500;margin:0 0 16px;color:#000}
.hec-footer ul{list-style:none;margin:0;padding:0}
.hec-footer ul li{margin:0;padding:2px 0}
.hec-footer ul a{text-decoration:none;font-size:14px;font-weight:300;color:#000}
.hec-footer ul a:hover{color:var(--hec-purple)}
.hec-bottom{background:#D4D4D4;border-top:1px solid rgba(255,255,255,.19)}
.hec-bottom-inner{max-width:var(--hec-max);margin:0 auto;min-height:50px;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}
.hec-bottom h3{font-size:13px;font-weight:400;margin:0}
.hec-bottom a{text-decoration:none;color:#222}
/* Floating contact button (matches Elementor fixed envelope button) */
.hec-float{position:fixed;left:-1px;bottom:0;margin:0 0 50px 50px;z-index:9999;background:var(--hec-purple);color:#fff;border-radius:200px;padding:25px 25px 20px 20px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 25px rgba(53,56,240,.35);text-decoration:none;font-family:"Montserrat",sans-serif;font-size:22px}
.hec-float:hover{background:var(--hec-cyan)}
.hec-float svg{width:22px;height:22px;fill:#fff}

/* ============ Responsive ============ */
@media(max-width:1024px){
  .hec-single-hero-inner{min-height:650px}
  .hec-single-hero{padding:0 5%}
  .hec-single-title{font-size:40px}
  .hec-single-body{padding:0 30px}
  .hec-grid-5{grid-template-columns:repeat(3,1fr)}
  .hec-popular{grid-template-columns:1fr}
  .hec-pop-side{display:none}
  .hec-archive-wrap{padding:100px 25px 0}
}
@media(max-width:767px){
  .hec-logo{padding:10px 20px}
  .hec-logo img{width:80px}
  .hec-grid-3{grid-template-columns:1fr}
  .hec-grid-arch{grid-template-columns:1fr}
  .hec-card-media{aspect-ratio:2/1}
  .hec-grid-5{grid-template-columns:1fr 1fr}
  .hec-headrow{flex-direction:column}
  .hec-hero-spacer{height:80px}
  .hec-hero-inner{padding:16px}
  .hec-hero{border-radius:0}
  .hec-hero::after{border-radius:0}
  .hec-hero-title{font-size:24px;line-height:1.4;margin:16px 0}
  .hec-single-hero{padding:10% 5% 150px}
  .hec-single-hero-inner{min-height:500px;padding:0}
  .hec-single-title{font-size:30px}
  .hec-share-row{flex-direction:column}
  .hec-share-icons{margin-right:0}
  .hec-newsletter{padding:50px 30px;margin:40px 20px}
  .hec-newsletter-form{flex-wrap:wrap}
  .hec-newsletter-field,.hec-newsletter-btnwrap{flex:0 0 100%}
  .hec-newsletter-btnwrap{margin-top:10px}
  .hec-card-arch .hec-card-body,.hec-card-arch .hec-card-meta{padding-left:24px;padding-right:24px}
  .hec-archive-wrap{padding:50px 15px}
  .hec-footer-grid{grid-template-columns:1fr;padding:35px 20px}
  .hec-footer-col1{margin-right:0}
  .hec-menu-toggle-label{display:block;text-align:center;border-top:1px dotted #8e8e8e;font-size:15px;color:#000}
  ul.hec-menu{display:none;flex-direction:column;align-items:stretch}
  .hec-menu-toggle-checkbox:checked ~ .hec-nav-inner ul.hec-menu{display:flex}
  ul.hec-menu>li>a{padding:12px 10px;border:0;border-top:1px solid #eee}
  ul.hec-menu li ul{position:static;box-shadow:none;border:0;border-top:1px solid #eee}
  .hec-bottom-inner{flex-direction:column;text-align:center}
  .hec-float{margin:0 0 20px 20px;padding:18px}
}
