/* ===== 배경 full-bleed ===== */
.pt-sec{
  width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  overflow:hidden !important;
}
.pt-bg-top{background:#C40303 !important;}
.pt-bg-red{background:#2C2C2C !important;}
.pt-bg-day{background:#A40002 !important;}
.pt-bg-gray{background:#F5F5F5 !important;}
.pt-bg-white{background:#FFFFFF !important;}
.pt-bg-black{background:#000000 !important;}

.pt-wrap{
  max-width:1100px !important;
  margin:0 auto !important;
}

.pt-sec img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  border:0 !important;
}

html,body{overflow-x:hidden;}

/* ===== 버튼 (원래 디자인 + 덮임 방지 강화) ===== */
.pt-sec .btn{
  display:block !important;
  width:100% !important;
  max-width:640px !important;
  margin:0 auto !important;
  padding:32px 16px !important;
  font-size:28px !important;
  font-weight:700 !important;
  line-height:1.1 !important;
  text-align:center !important;
  text-decoration:none !important;
  border-radius:20px !important;
  background-size:200% auto !important;
  transition:background-position .4s ease, transform .15s ease !important;
}

.pt-sec .btn:hover{background-position:right center !important;}
.pt-sec .btn:active{transform:scale(.97) !important;}

.pt-sec .btn-area{padding:0 16px 140px !important;}

.pt-sec .btn-red{
  color:#ffffff !important;
  background-color:#C8001E !important; /* 그라데이션이 막히면 최소 단색이라도 */
  background-image:linear-gradient(to right,#AA0621 0%,#F93C35 51%,#C8001E 100%) !important;
}

.pt-sec .btn-blue{
  color:#000000 !important;
  background-color:#32FD52 !important;
  background-image:linear-gradient(to right,#2DF2EA 0%,#32FD52 51%,#0685C0 100%) !important;
}

@media (max-width:480px){
  .pt-sec .btn{font-size:20px !important;padding:24px 16px !important;}
  .pt-sec .btn-area{padding-bottom:80px !important;}
}
