/* Trang con (bài viết, trang, danh sách): dùng chung token và component của main.css */
.inner-hero{position:relative;z-index:3;padding:clamp(170px,20vw,230px) 0 clamp(56px,7vw,90px)}
.inner-hero--full{min-height:100vh;min-height:100svh;display:grid;align-items:center}
.inner-hero__in{display:grid;gap:16px;max-width:980px}
.inner-hero__title{font-size:clamp(2rem,4.4vw,3.6rem);font-weight:800;line-height:1.12;letter-spacing:-.04em;color:#fff;text-wrap:balance}
.inner-hero__meta{font-size:14px;color:rgb(255 255 255 / .65)}
.inner-hero__desc{max-width:680px}
.inner-body{padding-block:clamp(56px,7vw,100px)}

.entry{max-width:820px;margin-inline:auto;padding:clamp(24px,4vw,52px);border-radius:var(--r-xl);background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow-card)}
.entry__thumb{margin-bottom:28px;border-radius:var(--r-lg);overflow:hidden}
.entry__thumb img{width:100%;height:auto}
.entry__content{font-size:17px;line-height:1.8;color:var(--ink-2);overflow-wrap:anywhere}
.entry__content>*+*{margin-top:1.1em}
.entry__content h2,.entry__content h3,.entry__content h4{color:var(--ink);font-weight:800;letter-spacing:-.025em;line-height:1.25;margin-top:1.6em}
.entry__content h2{font-size:clamp(1.5rem,2.6vw,2rem)}
.entry__content h3{font-size:clamp(1.25rem,2vw,1.5rem)}
.entry__content a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}
.entry__content ul,.entry__content ol{padding-left:1.4em}
.entry__content ul{list-style:disc}.entry__content ol{list-style:decimal}
.entry__content li+li{margin-top:.4em}
.entry__content img{height:auto;border-radius:var(--r-sm)}
.entry__content figure{max-width:100%}
.entry__content figcaption{font-size:13px;color:var(--ink-3);margin-top:8px;text-align:center}
.entry__content blockquote{padding:18px 22px;border-left:3px solid var(--primary);background:var(--blue-100);border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--ink)}
.entry__content table{width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}
.entry__content th,.entry__content td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.entry__content th{background:var(--blue-100);color:var(--ink)}
.entry__content iframe{max-width:100%}
.entry__content .aligncenter{margin-inline:auto}

.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.post-card{width:auto}
.post-card .pc__media img{width:100%;height:100%;object-fit:cover}
.post-card h3 a:hover{color:var(--primary)}
.post-card__date{font-size:13px;color:var(--ink-3)}
.pager{margin-top:40px}
.pager .nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.pager .page-numbers{min-width:44px;height:44px;padding:0 14px;display:grid;place-items:center;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:600;color:var(--ink-2)}
.pager .page-numbers.current,.pager a.page-numbers:hover{background:var(--primary);border-color:var(--primary);color:#fff}

@media (max-width:1100px){.posts{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.posts{grid-template-columns:1fr}.entry__content{font-size:16px}}

/* ---------- Khoá học (danh mục course_cat, shortcode [ed_edu_grid]) ---------- */
.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.entry__content .course-grid{margin-block:1.6em}
.course-card{width:auto}
.course-card .pc__media{aspect-ratio:16/9}
.course-card .pc__media img{width:100%;height:100%;object-fit:cover}
.course-card h3{font-size:1.22rem}
.course-card h3 a:hover{color:var(--primary)}
.course-card__author{font-size:14px;color:var(--ink-3)}
.course-card__author b{color:var(--ink)}
.course-card__time{font-size:13.5px;line-height:1.6;color:var(--ink-3)}
.course-card__time p+p{margin-top:4px}
.entry__content .course-card a{text-decoration:none}
.entry__content .course-card h3{margin-top:0;font-size:1.15rem}
.course-cta{margin-top:clamp(36px,5vw,60px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;padding:clamp(22px,3vw,34px);border-radius:var(--r-lg);background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow-card)}
.course-cta .desc{max-width:560px;color:var(--ink-2)}

/* ---------- Form Contact Form 7 trong bài viết / trang ---------- */
.wpcf7{margin-block:1.8em}
.wpcf7 form{position:relative;display:grid;gap:14px;padding:clamp(22px,3.4vw,34px);border-radius:var(--r-lg);color:var(--ink-2);background:radial-gradient(70% 80% at 100% 0%,rgb(143 180 255 / .22),transparent 70%),#fff;border:1px solid rgb(var(--ink-rgb) / .08);box-shadow:var(--shadow-card)}
.wpcf7 form>p{display:grid;gap:12px;margin:0}
.wpcf7 form br{display:none}
.wpcf7 label{display:grid;gap:6px;font-size:12.5px;font-weight:700;letter-spacing:.04em;color:var(--ink-2)}
.wpcf7-form-control-wrap{display:block}
.entry__content .wpcf7 input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),
.entry__content .wpcf7 select,.entry__content .wpcf7 textarea,
.wpcf7 input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),.wpcf7 select,.wpcf7 textarea{width:100%;height:50px;padding:0 16px;border-radius:14px;border:1px solid rgb(var(--ink-rgb) / .16);background:#fff;font:inherit;font-size:15px;color:var(--ink);transition:border-color .3s,box-shadow .3s;box-shadow:none;margin:0}
.wpcf7 textarea{height:120px!important;min-height:90px;padding:14px 16px;resize:vertical}
.wpcf7 select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230b4ee6' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 16px center;padding-right:42px}
.wpcf7 input::placeholder,.wpcf7 textarea::placeholder{color:#94a3b8}
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px rgb(var(--primary-rgb) / .14)}
.wpcf7 input[type=submit]{-webkit-appearance:none;appearance:none;width:100%;height:52px;margin-top:4px;border:0;border-radius:999px;background:var(--primary);color:#fff;font:inherit;font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 16px 34px -18px rgb(var(--primary-rgb) / .9);transition:background .4s,box-shadow .5s var(--ease),transform .5s var(--ease)}
.wpcf7 input[type=submit]:hover{background:var(--royal);box-shadow:0 22px 44px -18px rgb(var(--glow-rgb) / .8);transform:translateY(-1px)}
.wpcf7 input[type=submit]:disabled{opacity:.6;cursor:wait}
.wpcf7 .wpcf7-spinner{position:absolute;right:calc(clamp(22px,3.4vw,34px) + 14px);bottom:calc(clamp(22px,3.4vw,34px) + 14px);margin:0;background:#fff}
.wpcf7 .wpcf7-list-item{margin:0 14px 0 0}
.wpcf7 .wpcf7-list-item label{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;letter-spacing:0}
.wpcf7 input[type=checkbox],.wpcf7 input[type=radio]{width:18px;height:18px;accent-color:var(--primary)}
.wpcf7-not-valid-tip{margin-top:6px;font-size:12.5px;color:#dc2626}
.wpcf7 .wpcf7-not-valid{border-color:#dc2626!important}
.wpcf7 form .wpcf7-response-output{margin:0;padding:12px 16px;border-radius:14px;font-size:14px;border:1px solid var(--line)}
.wpcf7 form.sent .wpcf7-response-output{border-color:#16a34a;background:#f0fdf4;color:#166534}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.payment-required .wpcf7-response-output{border-color:#f59e0b;background:#fffbeb;color:#92400e}
.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output{border-color:#dc2626;background:#fef2f2;color:#991b1b}
.wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);height:1px;width:1px;margin:-1px;padding:0;border:0}

@media (max-width:760px){.course-grid{grid-template-columns:1fr}}

/* ==========================================================================
   Trang dựng khối (page-blocks.php)
   ========================================================================== */
.blk{position:relative;z-index:3;overflow:hidden}
.blk__bg{position:absolute;inset:0;z-index:-1}
.blk__bg img{width:100%;height:100%;object-fit:cover}
.blk__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgb(7 18 52 / .94) 0%,rgb(11 27 77 / .86) 45%,rgb(11 78 230 / .62) 100%)}
.blk.has-bg,.blk-banner{isolation:isolate}
.blk__head{max-width:860px}
.blk__head--center{margin-inline:auto;text-align:center;justify-items:center}
.blk__intro{max-width:720px}
.blk__title{font-size:clamp(1.8rem,3.4vw,2.9rem)}

/* chữ dài (wysiwyg) */
.prose{display:grid;gap:12px;font-size:15.5px;line-height:1.75;color:var(--ink-3)}
.prose p,.prose ul,.prose ol{margin:0}
.prose strong{color:var(--ink);font-weight:700}
.prose a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}
.prose ul{display:grid;gap:8px;padding:0}
.prose ul li{position:relative;padding-left:28px}
.prose ul li::before{content:"";position:absolute;left:0;top:.42em;width:17px;height:17px;border-radius:50%;background:rgb(var(--primary-rgb) / .1) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b4ee6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='m6.5 12.5 3.5 3.5 7.5-8'/></svg>") center/11px no-repeat}
.prose ol{padding-left:1.3em;list-style:decimal;display:grid;gap:8px}
.sec-dark .prose,.is-dark .prose{color:rgb(255 255 255 / .8)}
.sec-dark .prose strong,.is-dark .prose strong{color:#fff}
.sec-dark .prose a{color:var(--blue-300)}
.sec-dark .prose ul li::before,.is-dark .prose ul li::before{background-color:rgb(143 180 255 / .16);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238fb4ff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='m6.5 12.5 3.5 3.5 7.5-8'/></svg>")}

/* mở đầu / kêu gọi kèm form */
.blk-lead--hero{padding-top:clamp(170px,18vw,220px)}
.blk-lead__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:center}
.blk-lead__grid.is-solo{grid-template-columns:minmax(0,820px)}
.blk-lead__text{display:grid;gap:18px;align-content:start}
.blk-lead__title{font-size:clamp(2rem,4.2vw,3.6rem);font-weight:800;letter-spacing:-.04em;line-height:1.1;color:var(--ink);text-wrap:balance}
.blk-lead:not(.blk-lead--hero) .blk-lead__title{font-size:clamp(1.8rem,3.4vw,2.9rem)}
.sec-dark .blk-lead__title{color:#fff}
.sec-dark .blk-lead__title .grad{background:none;-webkit-text-fill-color:var(--blue-300);color:var(--blue-300)}
.blk-lead__text .prose{font-size:16px}
.blk-lead__text .btn-row{margin-top:6px}
.blk-lead__form{padding:clamp(22px,3vw,32px);border-radius:var(--r-xl);background:rgb(255 255 255 / .96);box-shadow:var(--shadow-float);color:var(--ink-2)}
.blk-lead__form h3{font-size:1.25rem;font-weight:800;letter-spacing:-.02em;color:var(--ink);margin-bottom:6px}
.blk-lead__form .wpcf7{margin:0}
.blk-lead__form .wpcf7 form{padding:0;background:none;border:0;box-shadow:none}

/* chữ + ảnh */
.blk-split__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(28px,5vw,80px);align-items:center}
.blk-split__grid.is-right .blk-split__media{order:2}
.blk-split__grid.is-solo{grid-template-columns:minmax(0,820px)}
.blk-split__media{position:relative;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-float);aspect-ratio:4/3;background:var(--blue-100)}
.blk-split__media img{width:100%;height:100%;object-fit:cover}
.blk-split__text{display:grid;gap:18px;align-content:start}
.blk-split__text .h2{margin:0}

/* lưới thẻ */
.blk-cards__grid{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:18px}
.bcard{position:relative;display:flex;flex-direction:column;border-radius:var(--r-lg);overflow:hidden;background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow-card);transition:transform .6s var(--ease),box-shadow .6s}
a.bcard:hover,.bcard:hover{transform:translateY(-6px)}
.bcard.is-dark{background:rgb(255 255 255 / .06);border-color:var(--line-light);box-shadow:none}
.bcard__media{display:block;aspect-ratio:var(--ratio,16/9);overflow:hidden;background:var(--blue-100)}
.bcard__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.bcard:hover .bcard__media img{transform:scale(1.045)}
.bcard__body{display:grid;gap:12px;padding:22px 22px 24px;align-content:start}
.bcard__n{font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--primary)}
.bcard__title{font-size:1.15rem;font-weight:800;letter-spacing:-.02em;line-height:1.3;color:var(--ink)}
.bcard.is-dark .bcard__title{color:#fff}
.bcard.is-dark .bcard__n{color:var(--blue-300)}
.bcard .prose{font-size:14.5px;line-height:1.65;gap:10px}
.bcard .prose ul{gap:6px}

/* quy trình */
.bsteps{display:grid;gap:clamp(18px,2.4vw,28px);counter-reset:none}
.bstep{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,.8fr);gap:clamp(18px,3vw,44px);align-items:start;padding:clamp(22px,3vw,36px);border-radius:var(--r-xl);background:rgba(255,255,255,.75);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow-card)}
.bstep.is-solo{grid-template-columns:auto minmax(0,1fr)}
.bstep__n{min-width:1.25em;font-size:clamp(3.2rem,6vw,5.4rem);font-weight:800;letter-spacing:-.06em;line-height:.85;color:transparent;-webkit-text-stroke:1.3px rgb(var(--primary-rgb) / .55)}
.bstep__text{display:grid;gap:10px}
.bstep__label{justify-self:start;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--primary);padding:4px 10px;border-radius:999px;background:rgb(var(--primary-rgb) / .09);border:1px solid rgb(var(--primary-rgb) / .2)}
.bstep__title{font-size:clamp(1.25rem,2vw,1.6rem);font-weight:800;letter-spacing:-.03em;line-height:1.25;color:var(--ink)}
.bstep__media{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/10;background:var(--blue-100)}
.bstep__media img{width:100%;height:100%;object-fit:cover}

/* ảnh lớn có chữ */
.blk-banner{padding-block:clamp(90px,12vw,170px);color:#fff}
.blk-banner .blk__bg::after{background:linear-gradient(180deg,rgb(7 18 52 / .82),rgb(7 18 52 / .9))}
.blk-banner__in{display:grid;justify-items:center;gap:16px;text-align:center;max-width:980px}
.blk-banner__in .desc{color:rgb(255 255 255 / .8);max-width:640px}
.blk-banner__img{margin-top:18px;width:100%;border-radius:var(--r-xl);overflow:hidden;box-shadow:0 50px 90px -40px rgb(0 0 0 / .8);border:1px solid rgb(255 255 255 / .16)}
.blk-banner__img img{width:100%;height:auto}

/* đội ngũ */
.bpeople{display:grid;gap:clamp(22px,3vw,36px)}
.bperson{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(24px,4vw,60px);align-items:center;padding:clamp(22px,3vw,36px);border-radius:var(--r-xl);background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow-card)}
.bperson.is-right .bperson__photo{order:2}
.bperson__photo{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5;background:radial-gradient(70% 60% at 50% 30%,rgb(29 92 255 / .5),transparent 70%),linear-gradient(160deg,#10276b,#071234)}
.bperson__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.bperson__text{display:grid;gap:10px}
.bperson__name{font-size:clamp(1.5rem,2.6vw,2.2rem);font-weight:800;letter-spacing:-.035em;color:var(--ink)}

/* đoạn văn */
.blk-text__in{display:grid;gap:18px;max-width:860px}

@media (max-width:1100px){
  .blk-lead__grid,.blk-split__grid{grid-template-columns:1fr}
  .blk-split__grid.is-right .blk-split__media{order:0}
  .blk-cards__grid{grid-template-columns:repeat(min(var(--cols,3),2),minmax(0,1fr))}
  .bstep{grid-template-columns:auto minmax(0,1fr)}
  .bstep__media{grid-column:1/-1}
}
@media (max-width:760px){
  .blk-cards__grid{grid-template-columns:1fr}
  .bstep{grid-template-columns:1fr;gap:12px}.bstep__n{font-size:3rem}
  .bperson{grid-template-columns:1fr}.bperson.is-right .bperson__photo{order:0}
  .bperson__photo{max-width:360px}
}

/* ---------- Bài viết liên quan ---------- */
.related{max-width:1160px;margin:clamp(56px,7vw,90px) auto 0}
.related__head{display:grid;gap:12px;margin-bottom:clamp(22px,3vw,34px)}
.related__title{font-size:clamp(1.7rem,3vw,2.5rem);font-weight:800;letter-spacing:-.04em;line-height:1.15;color:var(--ink)}

/* khối mở đầu có ảnh bên phải */
.blk-lead__grid.has-side{align-items:end}
.blk-lead__side{border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-float);aspect-ratio:4/3;align-self:center}
.blk-lead__side img{width:100%;height:100%;object-fit:cover}
.blk-lead__side.is-cutout{border-radius:0;overflow:visible;box-shadow:none;aspect-ratio:auto;align-self:end;margin-bottom:calc(clamp(88px,10vw,150px) * -1)}
.blk-lead__side.is-cutout img{width:100%;height:auto;max-height:78vh;object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 30px 60px rgb(0 0 0 / .45))}

/* con số nổi bật */
.bstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.bstat{display:grid;gap:6px;align-content:start;padding:26px 24px;border-radius:var(--r-lg);background:rgb(255 255 255 / .06);border:1px solid var(--line-light)}
.sec-ivory .bstat,.sec-lux .bstat{background:rgba(255,255,255,.78);border-color:rgba(255,255,255,.95);box-shadow:var(--shadow-card)}
.bstat__num{font-size:clamp(2rem,3vw,2.9rem);white-space:nowrap;font-weight:800;letter-spacing:-.045em;line-height:1.05;font-variant-numeric:tabular-nums;color:#fff}
.sec-ivory .bstat__num,.sec-lux .bstat__num{color:var(--primary)}
.bstat__label{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-300)}
.sec-ivory .bstat__label,.sec-lux .bstat__label{color:var(--ink)}
.bstat__text{font-size:14.5px;color:rgb(255 255 255 / .72)}
.sec-ivory .bstat__text,.sec-lux .bstat__text{color:var(--ink-3)}

/* thư viện ảnh */
.bgallery{display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:12px}
.bgallery__item{display:block;aspect-ratio:4/3;border-radius:var(--r-md);overflow:hidden;background:var(--blue-100);cursor:zoom-in}
.bgallery__item img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.bgallery__item:hover img{transform:scale(1.06)}
.lightbox{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:clamp(16px,4vw,48px);background:rgb(4 10 36 / .92);opacity:0;transition:opacity .35s var(--ease);cursor:zoom-out}
.lightbox.is-on{opacity:1}
.lightbox img{max-width:100%;max-height:100%;border-radius:var(--r-md);box-shadow:0 40px 90px -30px rgb(0 0 0 / .8)}
.lightbox__btn{position:absolute;top:50%;width:48px;height:48px;margin-top:-24px;border-radius:50%;display:grid;place-items:center;color:#fff;background:rgb(255 255 255 / .12);border:1px solid rgb(255 255 255 / .25)}
.lightbox__btn svg{width:20px;height:20px}
.lightbox__btn--prev{left:clamp(10px,2vw,28px)}.lightbox__btn--next{right:clamp(10px,2vw,28px)}

@media (max-width:1100px){
  .blk-lead__side.is-cutout{margin-bottom:calc(clamp(88px,10vw,150px) * -1);max-width:520px;justify-self:center}
  .bgallery{grid-template-columns:repeat(min(var(--cols,4),3),minmax(0,1fr))}
}
@media (max-width:760px){.bgallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
