/*=== contact ===*/
#contact{
    --color-gray: #777;
    --neon-blue: #00eeff;
    --glow-blue: 0 0 .2em var(--neon-blue), 0 0 .4em var(--neon-blue), 0 0 1.5em var(--neon-blue);
	background:#000;
	font-family: "Montserrat", sans-serif;
	padding-top:11.4vw;
	padding-bottom:0px;
}
.form-control input:not([type="checkbox"]):not([type="radio"]) {
    margin-top: .375rem;
}
.glow-orange {
    text-shadow: var(--glow-orange);
}
.glow-blue {
    text-shadow: var(--glow-blue);
}
.btn-neon {
    cursor: pointer;
    display: inline-block;
    box-sizing: border-box;
    font-weight: 800;
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: -.01em;
    padding: 0.521vw 0.625vw;
    border-radius: 0.208vw;
    color: #fff;
    background: transparent;
    transition: text-shadow 200ms, box-shadow 200ms;
}
.btn-neon:not(.no-outline) {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .65);
    padding: 0.521vw 1.25vw;
}

#contact .contact_content {
  margin: 0 auto;
  max-width: 44.792vw;
  padding-bottom: 2.604vw;
}
#contact .heading{
	position:relative;
}
#contact .heading .title {
    font-size: min(max(3.43vw, 40px), 66px);
	font-weight:500;
	color:#fff;
}
#contact .heading .icon {
	position:absolute;
	top:-2.083vw;
}
#contact .heading .icon img{
	width:5.833vw;
	height:auto;
}
#contact p.info {
    margin-top: 1.042vw;
    margin-bottom:1.042vw;
    font-size: min(max(0.938vw, 16px), 18px);
	font-weight:500;
	color:#fff;
}

#contact .form-row {
    margin-bottom: 1.25vw;
}
#contact .form-control {
	font-family: "Noto Serif TC", serif !important;
    display: block;
    font-family: inherit;
    width: 100%;
    padding: .5rem .625rem .4rem;
    border-radius: .375em;
    border: 0px solid var(--color-gray);
    box-shadow: 0 0 0 1px var(--color-gray);
    background-color: #fff;
    color: #000;
    font-weight: 800;
    font-size: 1rem;
    box-sizing: border-box;
    transition: all .2s ease-out;
}
#contact input {
    height: 2.5rem;
}
#contact textarea {
    height: 10rem;
}
#contact label {
    font-size:14px;
	color:#fff;
	padding-left:8px;
}
#contact .btn.submit  {
    background:#000;
	color:#fff;
    border:1px solid #fff;
    font-size: min(max(1.354vw, 20px), 26px);
    padding: .625rem 1.125rem;
    margin-top: 20px;
}
#contact .btn.submit:hover  {
    text-shadow: var(--glow-blue);
    box-shadow:var(--glow-blue);
}	

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 5px;
    font-size: 14px;
    color: #ecc265;
}
#contact .error {
    margin-top: 5px;
    font-size: 14px;
    color: #FF723F;
}

@media (max-width: 1300px) {
#contact .contact_content {
    max-width: 600px;
}
}

@media (max-width: 991px) {
#contact {
    padding-top: 120px;
}
#contact .container .row.contact_content {
    max-width: 72vw;
}
#contact .heading .title {
    font-size: 40px;
}
#contact p.info {
    margin-top: 15px;
    margin-bottom: 16px;
    font-size: 16px;
}
#contact .btn.submit {
    font-size:20px;
    padding: .625rem 1.125rem;
    margin-top: 20px;
}
#contact .heading .icon {
    top: -20px;
}
#contact .heading .icon img {
    width: 68px;
}
}

@media (max-width: 576px) {
#contact {
    padding-top: 100px;
}
#contact .heading .title {
    font-size: 36px;
}
#contact .btn.submit {
	font-size: 18px;
}
#contact .container .row.contact_content {
    max-width: 90vw;
}
#contact .heading .icon {
	top: -30px;
}
}