/* 靜宜大學 晶片設計學士學位學程 — 形象頁樣式
   品牌色：藍 #0050A0 / 橘 #E05010 / 金黃 #F0A000 / 深夜矽藍底 #0A1326 */

*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
	font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;
	color:#fff;
	background:radial-gradient(130% 100% at 50% 20%,#152a52 0%,#0A1326 52%),#0A1326;
	overflow-x:hidden;
}

.cover{
	position:relative;min-height:100vh;
	display:flex;flex-direction:column;align-items:center;justify-content:center;
	padding:64px 24px;text-align:center;overflow:hidden;
}
.bgline{position:absolute;inset:0;z-index:1;opacity:.55}

/* 沿背景線路移動的訊號點 */
.sig{position:absolute;z-index:1;width:6px;height:6px;border-radius:50%;
	background:#F0A000;box-shadow:0 0 10px 2px rgba(240,160,0,.8)}
.sig1{top:20%;left:0;animation:signalX 6s linear infinite}
.sig2{top:70%;left:0;background:#E05010;box-shadow:0 0 10px 2px rgba(224,80,16,.8);animation:signalX 8s linear infinite 1.5s}
.sig3{top:90%;left:0;animation:signalX 7s linear infinite .8s}
@keyframes signalX{from{transform:translateX(-20px)}to{transform:translateX(102vw)}}

/* 校院共同識別 */
.cobrand{position:relative;z-index:3;display:flex;align-items:center;gap:14px;
	margin-bottom:38px;opacity:0;animation:rise .8s cubic-bezier(.2,.7,.2,1) .1s both}
.emblem{width:58px;height:58px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.4))}
.cobrand-txt{text-align:left;line-height:1.25}
.cobrand-txt b{display:block;font-size:1.05rem;font-weight:700;letter-spacing:.04em}
.cobrand-txt span{font-size:.74rem;color:rgba(255,255,255,.65);letter-spacing:.02em}

/* 主舞台：系徽 + 光暈 */
.stage{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;
	width:min(560px,92vw);height:min(360px,60vw);margin-bottom:10px}
.aura{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.glow{position:absolute;width:70%;height:70%;border-radius:50%;
	background:radial-gradient(circle,rgba(0,110,200,.55) 0%,rgba(240,160,0,.18) 45%,transparent 70%);
	filter:blur(14px);animation:breathe 4.5s ease-in-out infinite}
.rays{position:absolute;width:118%;height:118%;opacity:.9}
.rays .trace{fill:none;stroke-width:1.4;opacity:.45}
.rays .trace.live{stroke-dasharray:5 9;animation:flow 3s linear infinite;opacity:.85}
.rays .node{fill:#F0A000}
.rays .node circle{animation:pulse 2.6s ease-in-out infinite}
.rays .node circle:nth-child(2n){animation-delay:.6s;fill:#E05010}
.rays .node circle:nth-child(3n){animation-delay:1.2s}

.logo-icd{position:relative;z-index:2;width:clamp(260px,44vw,440px);height:auto;
	filter:drop-shadow(0 12px 30px rgba(0,0,0,.45));
	opacity:0;animation:popIn 1s cubic-bezier(.2,.8,.2,1) .35s both,float 6s ease-in-out 1.4s infinite}

/* 文案 */
.headline{position:relative;z-index:2;font-weight:900;
	font-size:clamp(1.6rem,4.4vw,2.6rem);line-height:1.14;margin-top:22px;
	opacity:0;animation:rise .8s cubic-bezier(.2,.7,.2,1) .7s both}
.headline em{font-style:normal;color:#F0A000}
.lead{position:relative;z-index:2;max-width:36ch;margin:16px auto 0;
	font-size:1.02rem;line-height:1.75;color:rgba(255,255,255,.8);
	opacity:0;animation:rise .8s cubic-bezier(.2,.7,.2,1) .95s both}

/* 進入按鈕 */
.enter{position:relative;z-index:2;overflow:hidden;display:inline-flex;align-items:center;gap:9px;
	margin-top:34px;padding:15px 34px;background:#F0A000;color:#0A1326;
	font-weight:700;font-size:1.05rem;border-radius:2px;text-decoration:none;
	transition:transform .2s,box-shadow .2s;
	opacity:0;animation:rise .8s cubic-bezier(.2,.7,.2,1) 1.2s both}
.enter span{position:relative;z-index:2}
.enter::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;
	background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent);
	transform:skewX(-20deg);animation:shimmer 3.2s ease-in-out 2s infinite}
.enter:hover{transform:translateY(-2px);box-shadow:0 14px 34px -8px rgba(240,160,0,.6)}

.skip{position:absolute;right:26px;bottom:22px;z-index:3;font-family:monospace;
	font-size:.76rem;letter-spacing:.05em;color:rgba(255,255,255,.5);text-decoration:none;transition:color .2s}
.skip:hover{color:#F0A000}

/* keyframes */
@keyframes flow{to{stroke-dashoffset:-56}}
@keyframes pulse{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes breathe{0%,100%{transform:scale(.92);opacity:.7}50%{transform:scale(1.08);opacity:1}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes popIn{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}
@keyframes shimmer{0%{left:-60%}45%,100%{left:130%}}

/* 手機 */
@media (max-width:560px){
	.cover{padding:52px 20px}
	.cobrand{margin-bottom:26px}
	.emblem{width:48px;height:48px}
	.stage{margin-bottom:4px}
	.skip{position:static;display:inline-block;margin-top:22px}
}

/* 尊重「減少動態效果」：關掉動畫，但確保元素可見 */
@media (prefers-reduced-motion:reduce){
	*{animation:none!important;transition:none!important}
	.cobrand,.logo-icd,.headline,.lead,.enter{opacity:1!important;transform:none!important}
	.sig{display:none}
}
