
:root{
  --primary:#009944;
  --accent:#ff7a00;
}

*{
  box-sizing:border-box;
}

html,body{
  margin:0;
  min-height:100%;
  background:#ffffff;
}

body{
  font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;
  color:#111;
}

.maintenance-page{
  width:100%;
  min-height:100vh;
  padding:16px;
}

.maintenance-card{
  width:min(1100px,100%);
  margin:0 auto;
  background:#ffffff;
  border:none;
  padding:clamp(28px,6vw,48px);
}

.logo-wrap{
  margin-bottom:clamp(40px,7vw,64px);
}

.logo-img{
  width:clamp(220px,42vw,430px);
  max-width:100%;
  height:auto;
}

.title{
  margin:0 0 20px;
  color:var(--primary);
  font-size:clamp(44px,9vw,120px);
  font-weight:900;
  line-height:1.08;
}

.subtitle{
  margin:0 0 40px;
  font-size:clamp(20px,3vw,30px);
  line-height:1.35;
}

.notice{
  border-left:4px solid var(--accent);
  padding-left:20px;
}

.notice p{
  margin:0;
  font-size:clamp(20px,3vw,32px);
  line-height:1.7;
}

.maintenance-time{
  margin-top:8px;
}

.time-label{
  display:block;
}

.time-block{
  display:block;
  font-weight:700;
  white-space:nowrap;
}

@media (max-width:480px){

  .maintenance-page{
    padding:10px;
  }

  .maintenance-card{
    padding:24px 12px 40px;
  }

  .logo-img{
    width:min(280px,100%);
  }

  .title{
    font-size:clamp(40px,15vw,56px);
  }

  .subtitle{
    font-size:24px;
    overflow-wrap:anywhere;
  }

  .notice p{
    font-size:24px;
  }

  .time-block{
    font-size:18px;
  }
}
