/* ── Navigation ── */
.nav{position:fixed;top:0;left:0;right:0;height:var(--nav-h);background:rgba(255,255,255,.95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:var(--z-nav);transition:box-shadow var(--tr-base)}
.nav.scrolled{box-shadow:var(--shadow-nav)}
.nav__inner{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--pad-x)}
.nav__logo{display:flex;align-items:center;gap:var(--sp-3);font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--navy);text-decoration:none}
.nav__logo-img{height:44px;width:auto;border-radius:var(--r-sm)}
.nav__logo-icon{width:36px;height:36px;background:var(--navy);border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:var(--fs-sm);font-weight:var(--fw-bold)}
.nav__links{display:flex;align-items:center;gap:var(--sp-8)}
.nav__link{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary);text-decoration:none;position:relative;padding:var(--sp-2) 0;transition:color var(--tr-fast)}
.nav__link::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--royal-blue);transition:width var(--tr-base)}
.nav__link:hover,.nav__link.active{color:var(--royal-blue)}
.nav__link:hover::after,.nav__link.active::after{width:100%}
.nav__cta{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--white);background:var(--royal-blue);padding:var(--sp-2) var(--sp-6);border-radius:var(--r-full);text-decoration:none;transition:background var(--tr-fast),transform var(--tr-fast)}
.nav__cta:hover{background:var(--royal-blue-hover);color:var(--white);transform:translateY(-1px)}
.nav__toggle{display:none;flex-direction:column;gap:5px;width:28px;cursor:pointer;background:none;border:none;padding:0}
.nav__toggle span{display:block;width:100%;height:2px;background:var(--navy);border-radius:2px;transition:transform var(--tr-base),opacity var(--tr-fast)}
.nav__toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.nav__toggle.active span:nth-child(2){opacity:0}
.nav__toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.nav__mobile{display:none;position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;background:rgba(255,255,255,.98);backdrop-filter:blur(16px);flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-8);z-index:var(--z-overlay)}
.nav__mobile.open{display:flex}
.nav__mobile .nav__link{font-size:var(--fs-2xl)}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);font-size:var(--fs-base);font-weight:var(--fw-semibold);padding:var(--sp-4) var(--sp-8);border-radius:var(--r-full);text-decoration:none;cursor:pointer;border:2px solid transparent;transition:all var(--tr-base)}
.btn--primary{background:var(--royal-blue);color:var(--white);border-color:var(--royal-blue)}
.btn--primary:hover{background:var(--royal-blue-hover);border-color:var(--royal-blue-hover);color:var(--white);transform:translateY(-2px);box-shadow:0 8px 24px rgba(30,91,255,.3)}
.btn--outline{background:transparent;color:var(--white);border-color:rgba(255,255,255,.4)}
.btn--outline:hover{background:rgba(255,255,255,.1);border-color:var(--white);color:var(--white);transform:translateY(-2px)}
.btn--outline-dark{background:transparent;color:var(--navy);border-color:var(--border-color)}
.btn--outline-dark:hover{border-color:var(--royal-blue);color:var(--royal-blue);transform:translateY(-2px)}
.btn--gold{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.btn--gold:hover{background:var(--gold-dark);border-color:var(--gold-dark);transform:translateY(-2px);color:var(--white)}
.btn--lg{padding:var(--sp-5) var(--sp-10);font-size:var(--fs-lg)}
.btn--sm{padding:var(--sp-3) var(--sp-6);font-size:var(--fs-sm)}
.btn--block{width:100%}

/* ── Cards ── */
.card{background:var(--white);border-radius:var(--r-lg);padding:var(--sp-10);border:1px solid var(--border-light);box-shadow:var(--shadow-card);transition:transform var(--tr-base),box-shadow var(--tr-base),border-color var(--tr-base)}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover);border-color:var(--royal-blue)}
.card__icon{width:56px;height:56px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);margin-bottom:var(--sp-6);background:var(--royal-blue-bg)}
.card__label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--royal-blue);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--sp-2)}
.card__title{font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--text-primary);margin-bottom:var(--sp-3)}
.card__desc{font-size:var(--fs-base);color:var(--text-secondary);line-height:var(--lh-relaxed)}
.card__list{margin-top:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-3)}
.card__list li{font-size:var(--fs-sm);color:var(--text-secondary);padding-left:var(--sp-6);position:relative}
.card__list li::before{content:'';position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;background:var(--royal-blue)}
.card--program{position:relative;overflow:hidden}
.card--program::before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--royal-blue),var(--gold))}

/* ── Question List ── */
.question-list{display:flex;flex-direction:column;gap:var(--sp-4)}
.question-item{display:flex;align-items:flex-start;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);background:var(--white);border-radius:var(--r-md);border:1px solid var(--border-light);transition:border-color var(--tr-fast),transform var(--tr-fast)}
.question-item:hover{border-color:var(--royal-blue);transform:translateX(4px)}
.question-num{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--royal-blue-bg);color:var(--royal-blue);font-size:var(--fs-sm);font-weight:var(--fw-bold);display:flex;align-items:center;justify-content:center}
.question-text{font-size:var(--fs-base);color:var(--text-primary);font-weight:var(--fw-medium)}

/* ── Timeline ── */
.timeline{display:flex;flex-direction:column;position:relative}
.timeline::before{content:'';position:absolute;left:24px;top:0;bottom:0;width:2px;background:var(--border-color)}
.timeline-item{display:flex;gap:var(--sp-6);padding:var(--sp-8) 0;position:relative}
.timeline-dot{flex-shrink:0;width:48px;height:48px;border-radius:50%;background:var(--royal-blue);color:var(--white);display:flex;align-items:center;justify-content:center;font-weight:var(--fw-bold);font-size:var(--fs-lg);z-index:1;box-shadow:0 0 0 6px var(--light-gray)}
.timeline-content{padding-top:var(--sp-3)}
.timeline-title{font-size:var(--fs-xl);font-weight:var(--fw-bold);margin-bottom:var(--sp-2)}
.timeline-desc{font-size:var(--fs-base);color:var(--text-secondary)}

/* ── Badges & Tags ── */
.badge{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em}
.badge--blue{background:var(--royal-blue-bg);color:var(--royal-blue)}
.badge--gold{background:rgba(214,168,79,.12);color:var(--gold-dark)}
.tag{display:inline-block;padding:var(--sp-2) var(--sp-5);border-radius:var(--r-full);font-size:var(--fs-sm);font-weight:var(--fw-medium);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all var(--tr-fast)}
.tag:hover,.tag.active{background:var(--royal-blue);color:var(--white);border-color:var(--royal-blue)}

/* ── Form ── */
.form-group{margin-bottom:var(--sp-6)}
.form-label{display:block;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);margin-bottom:var(--sp-2)}
.form-input,.form-select,.form-textarea{width:100%;padding:var(--sp-4) var(--sp-5);border:1px solid var(--border-color);border-radius:var(--r-md);font-size:var(--fs-base);color:var(--text-primary);background:var(--white);transition:border-color var(--tr-fast),box-shadow var(--tr-fast)}
.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--royal-blue);box-shadow:0 0 0 3px rgba(30,91,255,.1)}
.form-textarea{resize:vertical;min-height:120px}
.form-input::placeholder,.form-textarea::placeholder{color:var(--text-tertiary)}

/* ── Footer ── */
.footer{background:var(--navy);color:rgba(255,255,255,.7);padding:var(--sp-16) 0 var(--sp-8)}
.footer__inner{display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--sp-12)}
.footer__brand{display:flex;align-items:center;gap:var(--sp-6)}
.footer__logo-img{height:80px;width:auto;margin-bottom:0;border-radius:var(--r-sm)}
.footer__brand-name{font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--white);margin-bottom:var(--sp-2)}
.footer__brand-slogan{font-size:var(--fs-sm);color:rgba(255,255,255,.6);line-height:var(--lh-relaxed)}
.footer__heading{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--gold);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--sp-6)}
.footer__link{display:block;font-size:var(--fs-sm);color:rgba(255,255,255,.6);text-decoration:none;margin-bottom:var(--sp-3);transition:color var(--tr-fast)}
.footer__link:hover{color:var(--white)}
.footer__bottom{margin-top:var(--sp-12);padding-top:var(--sp-8);border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-xs);color:rgba(255,255,255,.4)}
.footer__social{display:flex;gap:var(--sp-4)}
.footer__social a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:var(--fs-sm);transition:background var(--tr-fast),color var(--tr-fast)}
.footer__social a:hover{background:var(--royal-blue);color:var(--white)}

/* ── Content Cards ── */
.content-card{background:var(--white);border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border-light);box-shadow:var(--shadow-card);transition:transform var(--tr-base),box-shadow var(--tr-base)}
.content-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}
.content-card__img{height:180px;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:var(--fs-3xl);position:relative;overflow:hidden}
.content-card__img::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 20px,rgba(255,255,255,.03) 20px,rgba(255,255,255,.03) 21px)}
.content-card__body{padding:var(--sp-6)}
.content-card__tag{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--royal-blue);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--sp-3)}
.content-card__title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-primary);margin-bottom:var(--sp-3);line-height:var(--lh-snug)}
.content-card__desc{font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-relaxed)}
.content-card__link{display:inline-flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-4);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--royal-blue)}
.content-card__link:hover{gap:var(--sp-3)}

/* ── Value Cards ── */
.value-card{text-align:center;padding:var(--sp-10) var(--sp-8);background:var(--white);border-radius:var(--r-lg);border:1px solid var(--border-light);transition:transform var(--tr-base),border-color var(--tr-base)}
.value-card:hover{transform:translateY(-4px);border-color:var(--gold)}
.value-card__icon{width:64px;height:64px;border-radius:50%;margin:0 auto var(--sp-6);background:var(--royal-blue-bg);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl)}
.value-card__label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--royal-blue);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--sp-2)}
.value-card__title{font-size:var(--fs-xl);font-weight:var(--fw-bold);margin-bottom:var(--sp-3)}
.value-card__desc{font-size:var(--fs-sm);color:var(--text-secondary)}

/* ── Target List ── */
.target-list{display:flex;flex-direction:column;gap:var(--sp-3)}
.target-item{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);background:var(--white);border-radius:var(--r-md);border:1px solid var(--border-light);font-size:var(--fs-base);color:var(--text-secondary);transition:border-color var(--tr-fast)}
.target-item:hover{border-color:var(--royal-blue)}
.target-item__check{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--royal-blue-bg);color:var(--royal-blue);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:var(--fw-bold)}
