.ithich-alb-body{margin:0;background:var(--ialb-bg);font-family:var(--ialb-font);color:#0f172a}
.ithich-alb-page *{box-sizing:border-box}
.ialb-container{max-width:1180px;margin:0 auto;padding:0 22px}
.ialb-section{padding:92px 0;position:relative}
.ialb-section:nth-child(even){background:#f8fafc}
.ialb-section-hero{min-height:92vh;display:flex;align-items:center;background:radial-gradient(circle at top right, color-mix(in srgb, var(--ialb-primary) 22%, white), transparent 38%),linear-gradient(135deg,#fff 0%,#f8fafc 55%,color-mix(in srgb, var(--ialb-primary) 8%, white) 100%)}
.ialb-hero-grid,.ialb-split{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center}
.ialb-kicker{display:inline-block;padding:8px 13px;border-radius:999px;background:color-mix(in srgb, var(--ialb-primary) 12%, white);color:var(--ialb-primary);font-weight:800;margin-bottom:18px}
.ithich-alb-page h1,.ithich-alb-page h2,.ithich-alb-page h3{font-family:var(--ialb-heading);color:#0f172a}
.ithich-alb-page h1{font-size:clamp(42px,6.5vw,82px);line-height:.98;margin:0 0 22px;letter-spacing:-.055em}
.ithich-alb-page h2{font-size:clamp(30px,4vw,50px);line-height:1.08;text-align:center;margin:0 0 26px;letter-spacing:-.035em}
.ithich-alb-page h3{margin:0 0 10px;font-size:22px}
.ialb-accent{display:block;color:var(--ialb-primary);letter-spacing:0;font-family:var(--ialb-accent-font)}
.ialb-lead{font-size:20px;line-height:1.75;color:#475569;max-width:720px}
.ialb-button{display:inline-flex;align-items:center;justify-content:center;padding:16px 26px;background:var(--ialb-primary);color:#fff!important;text-decoration:none;border-radius:var(--ialb-radius);font-weight:900;border:0;cursor:pointer;box-shadow:0 16px 34px color-mix(in srgb, var(--ialb-primary) 28%, transparent)}
.ialb-hero-media,.ialb-split-media{border-radius:32px;background:#fff;min-height:420px;display:flex;align-items:center;justify-content:center;box-shadow:0 32px 90px rgba(2,6,23,.13);overflow:hidden;border:1px solid rgba(15,23,42,.06)}
.ialb-split-media{min-height:360px}
.ialb-hero-media img,.ialb-split-media img,.ialb-final-cta img{width:100%;height:100%;object-fit:cover}
.ialb-placeholder{font-weight:900;font-size:30px;color:var(--ialb-primary)}
.ialb-section-head{max-width:820px;margin:0 auto 34px;text-align:center}
.ialb-section-head p,.ialb-rich{font-size:18px;line-height:1.8;color:#475569}
.ialb-cards,.ialb-steps,.ialb-testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ialb-cards-pain,.ialb-cards-programs,.ialb-cards-locations{grid-template-columns:repeat(4,1fr)}
.ialb-card,.ialb-step,.ialb-form-box,.ialb-faq,.ialb-testimonial,.ialb-check{background:#fff;border:1px solid #e2e8f0;border-radius:26px;padding:26px;box-shadow:0 18px 48px rgba(15,23,42,.07)}
.ialb-card{transition:.22s ease}
.ialb-card:hover{transform:translateY(-4px);box-shadow:0 26px 60px rgba(15,23,42,.11)}
.ialb-card-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb, var(--ialb-primary) 12%, white);color:var(--ialb-primary);font-weight:900;margin-bottom:14px}
.ialb-card p,.ialb-step p,.ialb-faq p,.ialb-testimonial p,.ialb-check p{color:#64748b;line-height:1.75}
.ialb-step span,.ialb-check span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:999px;background:var(--ialb-primary);color:#fff;font-weight:900;margin-bottom:16px;flex:0 0 auto}
.ialb-narrow{max-width:860px}
.ialb-checklist{display:grid;gap:14px}
.ialb-check{display:flex;gap:16px;align-items:flex-start}
.ialb-faq{margin:12px 0}
.ialb-faq summary{cursor:pointer;font-weight:900;font-size:18px}
.ialb-testimonial p{font-size:18px}
.ialb-final-cta{display:grid;grid-template-columns:1fr .8fr;gap:24px;align-items:center;background:#0f172a;color:#fff;border-radius:34px;padding:42px;overflow:hidden}
.ialb-final-cta h2{color:#fff;text-align:left;margin-bottom:14px}
.ialb-final-cta p{color:#cbd5e1;font-size:18px;line-height:1.75}
.ialb-final-cta img{border-radius:24px;max-height:310px}
.ialb-form-box{text-align:center;max-width:820px;margin:0 auto}
.ialb-form-box form{display:grid;gap:14px;margin-top:22px}
.ialb-form-box input,.ialb-form-box textarea{width:100%;padding:15px 16px;border:1px solid #cbd5e1;border-radius:14px;font-size:16px}
.ialb-form-box textarea{min-height:110px}
.ialb-success{background:#dcfce7;color:#166534;border-radius:12px;padding:12px;margin:12px 0}
.ialb-sticky{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:8px;background:rgba(15,23,42,.9);padding:8px;border-radius:999px;z-index:9999;backdrop-filter:blur(10px)}
.ialb-sticky a{color:#fff;text-decoration:none;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.1);font-weight:800;white-space:nowrap}
@media(max-width:1024px){.ialb-cards-pain,.ialb-cards-programs,.ialb-cards-locations{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.ialb-hero-grid,.ialb-split,.ialb-cards,.ialb-steps,.ialb-testimonials,.ialb-final-cta{grid-template-columns:1fr}.ialb-section{padding:62px 0}.ialb-hero-media,.ialb-split-media{min-height:260px}.ialb-sticky{width:calc(100% - 18px);justify-content:center;overflow:auto}.ithich-alb-page h1{font-size:42px}.ialb-final-cta{padding:28px}.ialb-final-cta h2{text-align:left}}

/* v0.2.2-clean: lead form refinement */
.ialb-form-box{position:relative;overflow:hidden;text-align:left}
.ialb-form-box:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--ialb-primary) 9%,transparent),transparent 45%);pointer-events:none}
.ialb-form-box>*{position:relative}
.ialb-form-intro{text-align:center;max-width:680px;margin:0 auto 18px}
.ialb-form-intro h2{margin-bottom:12px}
.ialb-form-intro p{color:#64748b;font-size:18px;line-height:1.75;margin:0}
.ialb-lead-form{background:rgba(255,255,255,.72);border:1px solid #e2e8f0;border-radius:24px;padding:22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.ialb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ialb-form-grid label{display:block;font-weight:800;color:#334155}
.ialb-form-grid label span{display:block;margin:0 0 7px;font-size:14px}
.ialb-form-wide{grid-column:1/-1}
.ialb-submit{width:100%;margin-top:14px;font-size:17px}
.ialb-form-note{text-align:center;font-size:13px;color:#64748b;margin:12px 0 0}
@media(max-width:700px){.ialb-form-grid{grid-template-columns:1fr}.ialb-lead-form{padding:16px}}

/* v0.2.3-stability: lightweight conversion animations */
.ialb-animate{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
.ialb-visible{opacity:1;transform:none}
.ialb-button{transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.ialb-button:hover{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 22px 44px color-mix(in srgb,var(--ialb-primary) 34%,transparent)}
.ialb-sticky{animation:ialbStickyIn .45s ease both}
.ialb-sticky a{transition:background .2s ease,transform .2s ease}
.ialb-sticky a:hover{background:rgba(255,255,255,.22);transform:translateY(-1px)}
@keyframes ialbStickyIn{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,0)}}
@media(prefers-reduced-motion:reduce){.ialb-animate,.ialb-button,.ialb-sticky,.ialb-sticky a{transition:none!important;animation:none!important;transform:none!important;opacity:1!important}}


/* v0.2.4-critical: hiệu ứng rõ hơn và CTA cuối dạng text trái / nút phải */
.ialb-section{
  animation: ialbFadeUp .72s ease both;
  animation-delay: calc(min(var(--ialb-order, 1), 8) * .05s);
}
.ialb-card,.ialb-step,.ialb-check,.ialb-testimonial,.ialb-faq,.ialb-form-box{
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.ialb-card:hover,.ialb-step:hover,.ialb-check:hover,.ialb-testimonial:hover{
  transform: translateY(-6px);
  box-shadow: 0 30px 72px rgba(15,23,42,.14);
  border-color: color-mix(in srgb, var(--ialb-primary) 30%, #e2e8f0);
}
.ialb-button{
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.ialb-button:hover{
  transform: translateY(-2px);
  filter: brightness(1.04);
  box-shadow: 0 22px 48px color-mix(in srgb, var(--ialb-primary) 36%, transparent);
}
.ialb-final-cta{
  grid-template-columns: minmax(0,1fr) auto !important;
  gap: 34px !important;
}
.ialb-final-cta-text{min-width:0}
.ialb-final-cta-action{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:220px;
}
.ialb-final-cta .ialb-button{
  white-space:nowrap;
}
@keyframes ialbFadeUp{
  from{opacity:0;transform:translateY(24px)}
  to{opacity:1;transform:translateY(0)}
}
.ialb-hero-media img,.ialb-split-media img{
  transition: transform .5s ease;
}
.ialb-hero-media:hover img,.ialb-split-media:hover img{
  transform: scale(1.035);
}
@media(max-width:780px){
  .ialb-final-cta{
    grid-template-columns:1fr !important;
    text-align:left;
  }
  .ialb-final-cta-action{
    justify-content:flex-start;
    min-width:0;
  }
}


/* v0.2.8 usability fixes */
.ialb-section{color:var(--ialb-text,#0f172a);font-family:var(--ialb-font)}
.ialb-section h1,.ialb-section h2,.ialb-section h3{color:var(--ialb-heading-color,#0f172a)}
.ialb-section p,.ialb-section .ialb-rich,.ialb-section .ialb-lead,.ialb-section .ialb-card p,.ialb-section .ialb-step p,.ialb-section .ialb-faq p,.ialb-section .ialb-testimonial p,.ialb-section .ialb-check p{color:var(--ialb-text,#475569)}
.ialb-section .ialb-accent{color:var(--ialb-accent-color,var(--ialb-primary))}
.ialb-section[style*="background-color:#000"],.ialb-section[style*="background-color: #000"],.ialb-section[style*="background-color:#0"],.ialb-section[style*="background-color: #0"]{--ialb-text:#f8fafc;--ialb-heading-color:#fff}
.ialb-final-cta{grid-template-columns:1fr auto}
.ialb-final-cta-action{display:flex;justify-content:flex-end;align-items:center}
.ialb-animate{opacity:0;transform:translateY(34px);transition:opacity .75s ease,transform .75s ease}
.ialb-animate.ialb-in-view{opacity:1;transform:none}
.ialb-button{transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.ialb-button:hover{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 20px 42px color-mix(in srgb,var(--ialb-primary) 34%,transparent)}
.ialb-hero-media img,.ialb-split-media img{transition:transform .45s ease}
.ialb-hero-media:hover img,.ialb-split-media:hover img{transform:scale(1.035)}
@media(max-width:860px){.ialb-final-cta{grid-template-columns:1fr}.ialb-final-cta-action{justify-content:flex-start}}


/* v0.2.9 definitive style apply: section-level fonts/colors must override defaults */
.ithich-alb-page{
  color:var(--ialb-text,#0f172a);
  font-family:var(--ialb-font,system-ui,-apple-system,Segoe UI,sans-serif);
}
.ithich-alb-page h1,
.ithich-alb-page h2,
.ithich-alb-page h3{
  color:var(--ialb-heading-color,#0f172a) !important;
  font-family:var(--ialb-heading,var(--ialb-font,system-ui,-apple-system,Segoe UI,sans-serif)) !important;
}
.ithich-alb-page .ialb-accent{
  color:var(--ialb-accent-color,var(--ialb-primary,#2563eb)) !important;
  font-family:var(--ialb-accent-font,var(--ialb-heading,var(--ialb-font))) !important;
}
.ithich-alb-page .ialb-lead,
.ithich-alb-page .ialb-section-head p,
.ithich-alb-page .ialb-rich,
.ithich-alb-page .ialb-card p,
.ithich-alb-page .ialb-step p,
.ithich-alb-page .ialb-faq p,
.ithich-alb-page .ialb-testimonial p,
.ithich-alb-page .ialb-check p,
.ithich-alb-page .ialb-final-cta p{
  color:var(--ialb-text,#475569) !important;
  font-family:var(--ialb-font,system-ui,-apple-system,Segoe UI,sans-serif) !important;
}
.ialb-section[style*="background-color"]{
  background-image:none !important;
}
.ialb-section .ialb-kicker{
  color:var(--ialb-accent-color,var(--ialb-primary,#2563eb)) !important;
}
.ialb-section .ialb-button{
  background:var(--ialb-accent-color,var(--ialb-primary,#2563eb)) !important;
}


/* v0.3.0 fixes */
.ialb-final-cta.has-image{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,420px);gap:28px;align-items:center}
.ialb-final-cta-action{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}
.ialb-final-cta-image{width:100%;max-width:320px;border-radius:18px;overflow:hidden;box-shadow:0 20px 45px rgba(15,23,42,.18)}
.ialb-final-cta-image img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
@media (max-width: 768px){
  .ialb-final-cta.has-image{grid-template-columns:1fr}
  .ialb-final-cta-action{justify-content:flex-start}
}
