:root{
  --ink:#1c1e24;
  --ink-soft:#4a4d55;
  --paper:#ffffff;
  --porcelain:#f7f6f2;
  --cream:#fbfaf7;
  --rule:#e6e4de;
  --sgu:#9e1b32;          /* SGU 버건디 */
  --sgu-deep:#751223;
  --sgu-soft:#f6e9ec;
  --uk:#274b7a;            /* 영국 네이비 */
  --uk-soft:#e9eef6;
  --ca:#b8860b;            /* 워터루 골드 */
  --ca-soft:#f8f1de;
  --gd:#0e8a6d;            /* 그레나다 카리브 그린 */
  --gd-soft:#e6f3ef;
  --us:#5b6dc8;            /* 미국 인디고 */
  --us-soft:#eceef9;
  --dark:#141821;
  --font-body:'Noto Sans KR',sans-serif;
  --font-serif:'Playfair Display','Noto Sans KR',serif;
  --font-mono:'DM Mono',monospace;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:76px;}
body{font-family:var(--font-body);color:var(--ink);background:var(--paper);font-size:16px;line-height:1.7;word-break:keep-all;overflow-x:hidden;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;}
section{padding:88px 0;}

/* ===== 섹션 헤드 공통 ===== */
.section-head{margin-bottom:44px;}
.eyebrow{font-family:var(--font-mono);font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sgu);font-weight:600;display:block;margin-bottom:14px;}
.section-head h2{font-size:1.8rem;line-height:1.32;border-top:2px solid var(--sgu);padding-top:18px;font-weight:800;}
.section-head p{margin-top:12px;color:var(--ink-soft);font-size:.98rem;}

/* ===== NAV ===== */
header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(20,24,33,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08);}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px;max-width:1240px;margin:0 auto;padding:0 24px;}
.logo{display:flex;align-items:center;gap:12px;color:#fff;}
.logo .crest{width:42px;height:42px;flex:none;border-radius:50%;background:var(--sgu);display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-weight:700;font-size:1rem;color:#fff;border:2px solid rgba(255,255,255,.35);}
.logo .lt{display:flex;flex-direction:column;}
.logo b{font-size:1.02rem;line-height:1.15;font-weight:700;letter-spacing:-.01em;}
.logo span{display:block;font-family:var(--font-mono);font-size:.56rem;letter-spacing:.14em;color:#c9ccd4;margin-top:3px;text-align:left;white-space:nowrap;}
nav.menu{display:flex;align-items:center;gap:26px;}
nav.menu a{color:#dfe2e8;font-size:.9rem;font-weight:500;transition:color .2s;}
nav.menu a:hover{color:#fff;}
nav.menu a.cta{background:var(--sgu);color:#fff;padding:9px 20px;border-radius:999px;font-weight:700;}
nav.menu a.cta:hover{background:var(--sgu-deep);}
#hamburger{display:none;background:none;border:0;cursor:pointer;width:40px;height:40px;flex-direction:column;align-items:center;justify-content:center;gap:5px;}
#hamburger span{display:block;width:22px;height:2px;background:#fff;transition:.25s;}
#mobileMenu{display:none;background:#141821;border-top:1px solid rgba(255,255,255,.08);}
#mobileMenu a{display:block;color:#dfe2e8;padding:15px 24px;border-bottom:1px solid rgba(255,255,255,.06);font-size:.95rem;}
#mobileMenu a.cta{color:#fff;background:var(--sgu);font-weight:700;}
#mobileMenu.open{display:block;}

/* ===== HERO ===== */
#hero{position:relative;background:var(--dark);color:#fff;padding:158px 0 96px;overflow:hidden;}
.hero-bg{position:absolute;inset:0;background-image:var(--hero-photo);background-position:center 62%;background-size:cover;background-repeat:no-repeat;opacity:.32;filter:blur(1.5px) saturate(1.05);}
#hero::before{content:"";position:absolute;inset:0;background:
  linear-gradient(180deg, rgba(14,17,24,.78), rgba(14,17,24,.55) 45%, rgba(14,17,24,.92)),
  radial-gradient(900px 480px at 85% -10%, rgba(158,27,50,.4), transparent 60%),
  radial-gradient(700px 420px at -10% 110%, rgba(14,138,109,.22), transparent 60%);}
#hero .wrap{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;}
.hero-eyebrow{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.2em;color:#e9b6c1;margin-bottom:20px;display:block;}
#hero h1{font-size:3rem;line-height:1.18;font-weight:900;letter-spacing:-.02em;margin-bottom:22px;}
#hero h1 em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:#f0c9d2;}
#hero .lead{color:#c8ccd6;font-size:1.02rem;line-height:1.9;max-width:520px;margin-bottom:34px;}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;}
.hero-btns a{padding:14px 28px;border-radius:999px;font-weight:700;font-size:.95rem;}
.hero-btns .b1{background:var(--sgu);color:#fff;}
.hero-btns .b1:hover{background:var(--sgu-deep);}
.hero-btns .b2{border:1px solid rgba(255,255,255,.35);color:#fff;}
.hero-btns .b2:hover{background:rgba(255,255,255,.08);}
.hero-visual{display:flex;flex-direction:column;gap:14px;}
.hv-card{display:flex;align-items:center;gap:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:20px 22px;border-left-width:4px;border-left-style:solid;}
.hv-card.gd{border-left-color:var(--gd);}
.hv-card.uk{border-left-color:#6f9bd6;}
.hv-card.ca{border-left-color:#e4b429;}
.hv-card.ca .hv-body b{color:#fff;}
.hv-tag{flex:none;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:600;color:#fff;font-size:.9rem;}
.hv-card.gd .hv-tag{background:var(--gd);}
.hv-card.uk .hv-tag{background:#3d6cab;}
.hv-card.ca .hv-tag{background:#c79a1e;}
.hv-body b{display:block;font-size:1rem;margin-bottom:3px;}
.hv-body span{display:block;font-size:.82rem;color:#b9bec9;line-height:1.55;}
.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:64px;border-top:1px solid rgba(255,255,255,.14);position:relative;}
.hero-stats .st{padding:26px 18px 0;border-left:1px solid rgba(255,255,255,.14);}
.hero-stats .st:first-child{border-left:0;padding-left:0;}
.hero-stats .st b{display:block;font-family:var(--font-serif);font-size:1.9rem;font-weight:700;color:#fff;line-height:1.1;}
.hero-stats .st span{display:block;font-size:.78rem;color:#aab0bd;margin-top:8px;line-height:1.55;}

/* ===== INTRO ===== */
#intro{background:var(--paper);}
.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start;}
.intro-copy p{color:var(--ink-soft);font-size:.99rem;line-height:1.95;margin-bottom:18px;}
.intro-copy p b{color:var(--ink);font-weight:700;}
.acc-box{background:var(--porcelain);border:1px solid var(--rule);border-radius:16px;padding:28px;}
.acc-box h4{font-size:1rem;font-weight:700;margin-bottom:14px;}
.acc-box ul{list-style:none;}
.acc-box li{padding:10px 0;border-bottom:1px solid var(--rule);font-size:.9rem;color:var(--ink-soft);display:flex;gap:10px;}
.acc-box li:last-child{border-bottom:0;}
.acc-box li b{color:var(--ink);flex:none;font-family:var(--font-mono);font-size:.78rem;color:var(--sgu);font-weight:600;padding-top:3px;}
.feat5{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border:1px solid var(--rule);border-radius:16px;overflow:hidden;margin-top:56px;}
.feat5 .f{padding:28px 22px;border-left:1px solid var(--rule);background:#fff;}
.feat5 .f:first-child{border-left:0;}
.feat5 .num{font-family:var(--font-mono);font-size:.72rem;color:var(--sgu);letter-spacing:.12em;display:block;margin-bottom:12px;}
.feat5 strong{display:block;font-size:.98rem;font-weight:700;margin-bottom:8px;line-height:1.4;}
.feat5 p{font-size:.82rem;color:var(--ink-soft);line-height:1.7;}

/* ===== PATHWAY 로드맵 ===== */
#pathway{background:var(--porcelain);}
.legend{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px;}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;padding:5px 12px;border-radius:999px;line-height:1.4;}
.chip.gd{background:var(--gd-soft);color:var(--gd);}
.chip.uk{background:var(--uk-soft);color:var(--uk);}
.chip.ca{background:var(--ca-soft);color:#8a6408;}
.chip.us{background:var(--us-soft);color:#4152a8;}
.track-block{background:#fff;border:1px solid var(--rule);border-radius:18px;padding:28px;margin-bottom:22px;}
.track-block .tb-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:6px;}
.track-block h3{font-size:1.18rem;font-weight:800;}
.track-block .tb-sub{font-size:.85rem;color:var(--ink-soft);}
.track-block .tb-for{font-size:.86rem;color:var(--ink-soft);margin-bottom:22px;}
.track-block .tb-for b{color:var(--sgu);font-weight:700;}
.steps{display:flex;gap:0;align-items:stretch;overflow-x:auto;padding-bottom:6px;}
.step{flex:1;min-width:132px;position:relative;padding:0 8px 0 0;}
.step + .step{padding-left:8px;}
.step + .step::before{content:"";position:absolute;left:-6px;top:50%;width:12px;height:2px;background:#cfccc4;}
.step-in{border-radius:12px;padding:14px 12px;height:100%;border:1px solid var(--rule);background:#fff;}
.step.pre .step-in{background:#eef7f4;border-color:#cfe6dd;}
.step.md1 .step-in,.step.md2 .step-in{background:var(--sgu-soft);border-color:#ecd2d8;}
.step.cli .step-in{background:var(--us-soft);border-color:#dadef2;}
.step .yr{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.1em;color:#8b8e96;display:block;margin-bottom:6px;}
.step .st-name{font-size:.84rem;font-weight:700;line-height:1.4;display:block;margin-bottom:8px;}
.step .flags{display:flex;flex-wrap:wrap;gap:4px;}
.flag{font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:999px;line-height:1.5;white-space:nowrap;}
.flag.gd{background:var(--gd-soft);color:var(--gd);}
.flag.uk{background:var(--uk-soft);color:var(--uk);}
.flag.ca{background:var(--ca-soft);color:#8a6408;}
.flag.us{background:var(--us-soft);color:#4152a8;}
.md-band{display:flex;gap:10px;align-items:center;margin:26px 0 8px;}
.md-band .bar{height:1px;flex:1;background:var(--rule);}
.md-band span{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;color:#8b8e96;}
.path-note{background:#fff;border:1px solid var(--rule);border-left:4px solid var(--sgu);border-radius:12px;padding:20px 24px;font-size:.9rem;color:var(--ink-soft);line-height:1.85;margin-top:6px;}
.path-note b{color:var(--ink);}

/* ===== QUICK COMPARE ===== */
#compare{background:var(--paper);}
.cmp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.cmp-card{border:1px solid var(--rule);border-radius:18px;padding:30px 26px;background:#fff;border-top:4px solid var(--rule);}
.cmp-card.gd{border-top-color:var(--gd);}
.cmp-card.uk{border-top-color:var(--uk);}
.cmp-card.ca{border-top-color:var(--ca);}
.cmp-name{font-size:1.16rem;font-weight:800;line-height:1.35;}
.cmp-sub{font-family:var(--font-mono);font-size:.74rem;color:#8b8e96;margin:6px 0 18px;letter-spacing:.04em;}
.cmp-row{padding:13px 0;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:3px;}
.cmp-k{font-size:.76rem;font-weight:700;color:#9a9da5;letter-spacing:.04em;}
.cmp-v{font-size:.9rem;line-height:1.65;color:var(--ink);}
.cmp-v.big{font-size:1.15rem;font-weight:800;}
.cmp-v small{display:block;font-size:.78rem;color:var(--ink-soft);font-weight:400;}

/* ===== PROGRAM DETAIL 탭 ===== */
#programs{background:var(--porcelain);}
.tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px;}
.tab-btn{border:1px solid var(--rule);background:#fff;padding:12px 22px;border-radius:999px;font-family:var(--font-body);font-size:.92rem;font-weight:700;color:var(--ink-soft);cursor:pointer;transition:.2s;}
.tab-btn:hover{border-color:var(--sgu);color:var(--sgu);}
.tab-btn.active{background:var(--sgu);border-color:var(--sgu);color:#fff;}
.panel{display:none;background:#fff;border:1px solid var(--rule);border-radius:20px;padding:44px;}
.panel.show{display:block;}
.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;margin-bottom:20px;}
.panel-title h3{font-size:1.5rem;font-weight:800;line-height:1.3;}
.panel-title .sub{font-family:var(--font-mono);font-size:.78rem;color:#8b8e96;margin-top:6px;}
.op-badge{flex:none;font-size:.8rem;font-weight:700;padding:8px 16px;border-radius:999px;background:var(--sgu-soft);color:var(--sgu);}
.intro-p{color:var(--ink-soft);font-size:.96rem;line-height:1.95;margin-bottom:32px;max-width:820px;}
.panel-photos{display:grid;gap:14px;margin-bottom:32px;}
.panel-photos.two{grid-template-columns:1.3fr 1fr;}
.panel-photos.one{grid-template-columns:1fr;}
.panel-photos figure{margin:0;border-radius:14px;overflow:hidden;position:relative;background:var(--porcelain);}
.panel-photos img{width:100%;height:100%;object-fit:cover;display:block;}
.panel-photos.two figure:first-child img{aspect-ratio:16/11;}
.panel-photos.two figure:last-child img{aspect-ratio:4/5;}
.panel-photos.one img{aspect-ratio:21/9;}
.panel-photos figcaption{position:absolute;left:0;bottom:0;right:0;padding:10px 14px;font-size:.72rem;color:#fff;background:linear-gradient(0deg, rgba(0,0,0,.55), transparent);font-family:var(--font-mono);letter-spacing:.03em;}
.feat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:44px;}
.feat-item{background:var(--cream);border:1px solid var(--rule);border-radius:14px;padding:22px 20px;}
.fi-num{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.12em;color:var(--sgu);display:block;margin-bottom:10px;}
.feat-item strong{display:block;font-size:.94rem;font-weight:700;margin-bottom:8px;line-height:1.45;}
.feat-item p{font-size:.8rem;color:var(--ink-soft);line-height:1.7;}
.subhead{font-size:1.08rem;font-weight:800;margin:40px 0 16px;padding-left:14px;border-left:4px solid var(--sgu);}
.spec-table{width:100%;border-collapse:collapse;border:1px solid var(--rule);border-radius:12px;overflow:hidden;}
.spec-table thead th{background:var(--dark);color:#fff;font-size:.82rem;font-weight:700;padding:12px 18px;text-align:left;}
.spec-table tbody th{width:180px;background:var(--porcelain);font-size:.86rem;font-weight:700;padding:15px 18px;text-align:left;vertical-align:top;border-top:1px solid var(--rule);}
.spec-table tbody td{font-size:.9rem;padding:15px 18px;border-top:1px solid var(--rule);line-height:1.75;color:var(--ink-soft);vertical-align:top;}
.spec-table tbody td b{color:var(--ink);font-weight:800;}
.spec-table .help{display:block;font-size:.85rem;color:var(--sgu);margin-top:6px;font-weight:500;}
.timeline{display:flex;flex-direction:column;gap:0;margin-top:6px;}
.tl-item{display:flex;gap:20px;padding:14px 0;border-bottom:1px solid var(--rule);align-items:baseline;}
.tl-item:last-child{border-bottom:0;}
.tl-date{flex:none;width:190px;font-family:var(--font-mono);font-size:.82rem;color:var(--sgu);font-weight:500;}
.tl-txt{font-size:.9rem;color:var(--ink-soft);line-height:1.7;}
.src-note{margin-top:36px;font-size:.78rem;color:#9a9da5;}

/* ===== 선택 가이드 ===== */
#choose{background:var(--paper);}
.choose-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.choose-card{border:1px solid var(--rule);border-radius:16px;padding:28px;background:var(--cream);}
.cq{font-family:var(--font-serif);font-size:1.06rem;font-weight:700;font-style:italic;margin-bottom:12px;line-height:1.5;}
.choose-card .ca{font-size:.9rem;color:var(--ink-soft);line-height:1.85;margin-bottom:14px;}
.choose-result{display:inline-block;font-size:.82rem;font-weight:800;color:var(--sgu);}
.rank-note{margin-top:36px;background:var(--porcelain);border:1px solid var(--rule);border-radius:16px;padding:28px;}
.rank-note h4{font-size:.98rem;font-weight:800;margin-bottom:12px;}
.rank-note p{font-size:.88rem;color:var(--ink-soft);line-height:1.9;}

/* ===== FAQ ===== */
#faq{background:var(--porcelain);}
.qa-item{background:#fff;border:1px solid var(--rule);border-radius:14px;margin-bottom:12px;overflow:hidden;}
.qa-q{width:100%;display:flex;justify-content:flex-start;text-align:left;align-items:center;gap:14px;background:none;border:0;padding:20px 24px;font-family:var(--font-body);font-size:.98rem;font-weight:700;color:var(--ink);cursor:pointer;}
.qa-q .qm{flex:none;font-family:var(--font-serif);color:var(--sgu);font-weight:700;font-size:1.05rem;}
.qa-q .arrow{margin-left:auto;flex:none;transition:.25s;color:#9a9da5;font-size:.8rem;}
.qa-item.open .arrow{transform:rotate(180deg);}
.qa-a{display:none;padding:0 24px 22px 24px;}
.qa-a .inner{text-align:left;font-size:.92rem;color:var(--ink-soft);line-height:1.95;border-top:1px solid var(--rule);padding-top:18px;}
.qa-item.open .qa-a{display:block;}

/* ===== INQUIRY CTA ===== */
#inquiry{background:var(--dark);color:#fff;text-align:center;padding:96px 0;}
#inquiry .eyebrow{color:#e9b6c1;}
#inquiry h2{font-size:2rem;font-weight:900;margin-bottom:16px;line-height:1.35;}
#inquiry p{color:#b9bec9;font-size:.98rem;max-width:560px;margin:0 auto 36px;line-height:1.9;}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.cta-btns a{display:inline-flex;align-items:center;gap:10px;padding:16px 34px;border-radius:999px;font-weight:800;font-size:1rem;}
.cta-btns .kakao{background:#FEE500;color:#191919;}
.cta-btns .cafe{background:#03C75A;color:#fff;}

/* ===== INQUIRY FORM ===== */
#inquiry-form{background:var(--porcelain);}
.qa-card{background:#fff;border:1px solid var(--rule);border-radius:20px;padding:40px;max-width:640px;}
.qa-card h3{font-size:1.2rem;font-weight:800;margin-bottom:26px;}
.qa-field{margin-bottom:18px;}
.qa-field label{display:block;font-size:.86rem;font-weight:700;margin-bottom:8px;}
.qa-field input,.qa-field textarea{width:100%;border:1px solid var(--rule);background:var(--cream);border-radius:10px;padding:13px 16px;font-family:var(--font-body);font-size:.94rem;color:var(--ink);}
.qa-field textarea{min-height:130px;resize:vertical;}
.qa-field input:focus,.qa-field textarea:focus{outline:2px solid var(--sgu);outline-offset:0;border-color:transparent;}
.qa-submit-btn{width:100%;background:var(--sgu);color:#fff;border:0;border-radius:999px;padding:16px;font-family:var(--font-body);font-size:1rem;font-weight:800;cursor:pointer;margin-top:6px;}
.qa-submit-btn:hover{background:var(--sgu-deep);}
.qa-note{margin-top:16px;font-size:.8rem;color:#9a9da5;}

.form_check {display: flex;   align-items: center;  gap: 10px; margin-bottom:22px}
.form_check label {display: flex;   align-items: center;  gap: 5px; font-size: 0.78rem;}
.form_check #privacy_view_btn {display: inline-block;    padding: 3px 6px;    background: #ddd;    border-radius: 3px;    cursor: pointer; font-size: 0.78rem;}
#privacy_agree_scroll { display:none;   border: 1px solid #ccc;    padding: 10px;    margin-top: 10px;    overflow-y: scroll;    height: 150px; font-size: 0.78rem; margin-bottom: 22px;}
#privacy_agree_scroll h3 {font-size: 1rem; font-family: var(--font-body); margin:0.5em}
#privacy_agree_scroll p {margin-bottom:1em}
#privacy_agree_scroll .para01 {margin-bottom:15px}

/* ===== FOOTER ===== */
footer{background:#101319;color:#9aa0ac;padding:60px 0 100px;font-size:.84rem;line-height:2;}
footer .f-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;}
footer b{color:#e4e7ec;font-size:.95rem;display:block;margin-bottom:10px;}
footer a{color:#c7ccd6;}
footer a:hover{color:#fff;}
.f-copy{margin-top:36px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-size:.76rem;color:#6d7380;}

/* ===== 플로팅 버튼 ===== */
#floatBtns{position:fixed;right:22px;bottom:26px;z-index:99;display:flex;flex-direction:column;gap:10px;}
#floatBtns a{width:54px;height:54px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.6rem;font-weight:800;box-shadow:0 6px 18px rgba(0,0,0,.18);line-height:1.2;text-align:center;}
#floatBtns .fk{background:#FEE500;color:#191919;}
#floatBtns .fc{background:#03C75A;color:#fff;}
#floatBtns .ft{background:var(--dark);color:#fff;}
#floatBtns .ic{font-size:1.05rem;margin-bottom:1px;}

/* ===== 반응형 ===== */
@media (max-width:960px){
  #hero .wrap{grid-template-columns:1fr;gap:44px;}
  .intro-grid{grid-template-columns:1fr;gap:36px;}
  .feat5{grid-template-columns:1fr 1fr;}
  .feat5 .f{border-left:0;border-top:1px solid var(--rule);}
  .feat5 .f:nth-child(2n){border-left:1px solid var(--rule);}
  .feat5 .f:nth-child(-n+2){border-top:0;}
  .cmp-grid{grid-template-columns:1fr;}
  .feat-grid{grid-template-columns:1fr 1fr;}
  .choose-grid{grid-template-columns:1fr;}
  .panel{padding:30px 24px;}
}
@media (max-width:720px){
  nav.menu{display:none;}
  #hamburger{display:flex;}
  .hero-stats{display:none !important;}
  section{padding:64px 0;}
  .steps{flex-direction:column;}
  .step{min-width:0;padding:0 0 8px 0;}
  .step + .step{padding-left:0;padding-top:8px;}
  .step + .step::before{left:24px;top:-5px;width:2px;height:10px;}
  .tl-item{flex-direction:column;gap:4px;}
  .tl-date{width:auto;}
  .spec-table tbody th{width:110px;}
}
@media (max-width:430px){
  body{font-size:14px;line-height:1.65;}
  .wrap{padding:0 18px;}
  .section-head h2{font-size:1.48rem;line-height:1.3;}
  .eyebrow{font-size:.7rem;letter-spacing:.12em;}
  .logo{max-width:calc(100% - 54px);}
  .logo .crest{width:38px;height:38px;font-size:.86rem;}
  .logo b{font-size:.92rem !important;line-height:1.1;}
  .logo span{font-size:.48rem !important;letter-spacing:.1em !important;white-space:nowrap;}
  #hero{padding:128px 0 64px;}
  #hero h1{font-size:2.05rem;line-height:1.2;letter-spacing:0;}
  #hero .lead{font-size:.92rem;line-height:1.82;}
  .hv-card{padding:16px;gap:12px;}
  .hv-body b{font-size:.9rem;}
  .hv-body span{font-size:.76rem;}
  .feat5{grid-template-columns:1fr;}
  .feat5 .f{border-left:0 !important;}
  .track-block{padding:20px 16px;}
  .panel{padding:24px 16px;}
  .panel-title h3{font-size:1.22rem;}
  .feat-grid{grid-template-columns:1fr;}
  .cmp-card{padding:24px 20px;}
  .cmp-v,.spec-table tbody td,.tl-txt{word-break:break-word;overflow-wrap:anywhere;}
  .spec-table tbody th{word-break:keep-all;}
  .qa-card{padding:26px 20px;}
  #floatBtns{right:12px;bottom:16px;}
  #floatBtns a{width:44px;height:44px;font-size:.53rem;}
  #floatBtns .ic{font-size:.9rem;}
}

/* ===== Match Day ===== */
.matchday-sec{background:var(--dark);color:#fff;padding:88px 0;overflow:hidden;}
.md-head{border-top:none;padding-top:0;}
.md-head .eyebrow{color:#fff;opacity:.7;}
.md-head h2{color:#fff;}
.md-head p{color:#fff;opacity:.75;}
.md-top{display:grid;grid-template-columns:230px 1fr;gap:56px;align-items:center;margin-top:48px;}
.md-donut{position:relative;width:230px;height:230px;margin:0 auto;flex:none;}
.md-donut svg{width:100%;height:100%;}
.md-donut-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.md-big{font-family:var(--font-mono);font-size:2.6rem;font-weight:700;color:#2fb6a3;}
.md-sub{font-size:.72rem;color:rgba(255,255,255,.6);margin-top:4px;text-align:center;}
.md-main-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 40px;min-width:0;}
.md-stat{min-width:0;}
.md-pct{font-family:var(--font-mono);font-size:2.1rem;font-weight:700;color:#2fb6a3;display:block;}
.md-stat p{font-size:.9rem;color:rgba(255,255,255,.85);margin-top:6px;word-break:keep-all;}
.md-sub-grid{margin-top:36px;padding-top:28px;border-top:1px solid rgba(255,255,255,.15);display:grid;grid-template-columns:repeat(4,1fr);gap:14px 18px;}
.md-sub-grid p{font-size:.85rem;color:rgba(255,255,255,.75);min-width:0;word-break:keep-all;}
.md-sub-grid p b{color:#2fb6a3;}
.md-note{margin-top:20px;font-size:.78rem;color:rgba(255,255,255,.45);line-height:1.7;word-break:keep-all;}
@media (max-width:720px){
  .md-top{grid-template-columns:1fr;gap:32px;}
  .md-sub-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:430px){
  .matchday-sec{padding:56px 0;}
  .md-donut{width:180px;height:180px;}
  .md-big{font-size:2rem;}
  .md-main-grid{grid-template-columns:1fr 1fr;gap:22px 16px;}
  .md-pct{font-size:1.6rem;}
  .md-stat p{font-size:.8rem;}
  .md-sub-grid{grid-template-columns:1fr 1fr;gap:12px 14px;}
  .md-sub-grid p{font-size:.78rem;}
}