/* =========================================================
   PAGE: MID Festival special offer
   Requires existing Profita.Business global CSS.
   ========================================================= */

.mid-page{background:var(--ps-light);}
.mid-page section{position:relative;}

.mid-hero{
	background:
		radial-gradient(circle at 85% 20%,rgba(247,152,32,.20),transparent 27%),
		radial-gradient(circle at 70% 85%,rgba(139,127,214,.22),transparent 30%),
		linear-gradient(145deg,var(--ps-dark),#2d2456 65%,#3b2b55);
	color:var(--ps-light);
	overflow:hidden;
}
.mid-hero::before{
	content:'';
	position:absolute;inset:0;
	background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
	background-size:60px 60px;
}
.mid-hero-inner{position:relative;z-index:1;display:flex;justify-content:center;}
.mid-hero-copy{max-width:900px;text-align:center;}
.mid-badge{
	display:inline-block;padding:.45rem 1rem;border-radius:999px;
	border:1px solid rgba(247,152,32,.45);background:rgba(247,152,32,.12);
	color:var(--ps-orange);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
}
.mid-hero h1{font-size:3.5rem;margin:1.4rem 0;color:var(--ps-light);}
.mid-hero h1 span{color:var(--ps-orange);}
.mid-lead{font-size:1.25rem;}
.mid-hero-copy > p{max-width:760px;margin:1rem auto;color:rgba(255,255,255,.78);}
.mid-offer{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2.5rem auto 1.5rem;}
.mid-offer > div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:1.3rem;}
.mid-offer strong{display:block;font-size:1.8rem;margin-bottom:.4rem;}
.mid-offer span{font-weight:600;}
.mid-price{display:flex;align-items:baseline;justify-content:center;gap:1rem;margin:1rem 0;}
.mid-price span{font-size:1.2rem;}
.mid-price strong{font-size:4.5rem;color:var(--ps-orange);line-height:1;}
.mid-deadline{font-weight:700!important;color:var(--ps-light)!important;margin-bottom:1.8rem!important;}

.mid-intro{text-align:center;background:var(--ps-gray-100);}
.mid-intro p{font-size:1.05rem;}
.mid-quote{margin:2.5rem auto 0;padding:1.5rem 2rem;background:var(--ps-light);border-left:4px solid var(--ps-orange);border-radius:12px;font-size:1.25rem;box-shadow:0 4px 25px rgba(0,0,0,.06);}

.mid-check-list{list-style:none;padding:0;margin:1.2rem 0;}
.mid-check-list li{padding:.35rem 0;color:var(--ps-gray-700);}
.mid-check-list li::before{content:'✓';color:var(--ps-orange);font-weight:800;margin-right:.6rem;}
.mid-note{font-size:.86rem!important;color:var(--ps-gray-600)!important;}
.mid-center-cta{text-align:center;margin-top:3rem;}

.mid-exhibition{background:var(--ps-light);}
.mid-qr-box{max-width:900px;margin:3rem auto 0;display:grid;grid-template-columns:90px 1fr;gap:1.5rem;align-items:center;background:var(--ps-gray-100);border-radius:20px;padding:2rem;border:1px solid var(--ps-gray-200);}
.mid-qr-icon{width:76px;height:76px;border-radius:14px;background:linear-gradient(135deg,var(--ps-orange),var(--ps-lavender));color:#fff;display:flex;align-items:center;justify-content:center;font-size:2.6rem;font-weight:800;}
.mid-qr-box h3{margin:.2rem 0 .5rem;}

.mid-after .mid-center-cta{margin-top:3rem;}
.mid-after .btn-primary:hover{border-color:#fff;}

.mid-terms{background:var(--ps-gray-100);}
.mid-terms-warning,.mid-halfyear{max-width:960px;margin:2rem auto 0;padding:1.5rem 2rem;border-radius:16px;background:var(--ps-light);}
.mid-terms-warning{border-left:4px solid var(--ps-orange);}
.mid-halfyear{border-left:4px solid var(--ps-lavender);}
.mid-halfyear h3{margin-top:0;}

.mid-materials{background:var(--ps-light);}
.mid-materials h2{font-size:2rem;}
.mid-speed-card{background:linear-gradient(145deg,#f9f7ff,var(--ps-gray-100));border:1px solid var(--ps-gray-200);border-radius:20px;padding:2.5rem;box-shadow:0 5px 30px rgba(0,0,0,.06);}
.mid-speed-icon{font-size:3rem;}

.mid-faq{background:var(--ps-gray-100);}
.mid-faq-item{background:var(--ps-light);border:1px solid var(--ps-gray-200);border-radius:12px;margin:.8rem 0;overflow:hidden;}
.mid-faq-item summary{cursor:pointer;padding:1.2rem 1.4rem;font-weight:700;color:var(--ps-dark);list-style:none;}
.mid-faq-item summary::-webkit-details-marker{display:none;}
.mid-faq-item summary::after{content:'+';float:right;color:var(--ps-orange);font-size:1.4rem;line-height:1;}
.mid-faq-item[open] summary::after{content:'−';}
.mid-faq-item p{padding:0 1.4rem 1.3rem;margin:0;color:var(--ps-gray-700);}

.mid-final{text-align:center;}
.mid-final-inner{max-width:850px;margin:0 auto;}
.mid-final-kicker{font-weight:800;text-transform:uppercase;letter-spacing:.1em;}
.mid-final .section-title{margin:1rem 0 2rem;}
.mid-final-offer{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;font-weight:600;}
.mid-final-price{font-size:4.5rem;font-weight:800;line-height:1;margin:2rem 0 1rem;}
.mid-final-price small{font-size:1rem;font-weight:600;}
.mid-final .btn{background:#fff;color:var(--ps-lavender);margin-top:1rem;}
.mid-final .btn:hover{background:var(--ps-dark);color:#fff;}

.mid-registration{background:var(--ps-light);}
.mid-registration-lead{text-align:center;max-width:680px;margin:-2rem auto 2.5rem;color:var(--ps-gray-600);}
.mid-form{max-width:800px;margin:0 auto;background:var(--ps-gray-100);border-radius:20px;padding:2.5rem;border:1px solid var(--ps-gray-200);}
.mid-form label{display:block;margin:.5rem 0;}
.mid-form input.formfield,.mid-form textarea.formfield{max-width:none;}
.mid-form-options{margin:1.5rem 0;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid var(--ps-gray-200);display:grid;grid-template-columns:1fr 1fr;gap:.65rem 1.5rem;}
.mid-form-options legend{font-weight:700;padding:0 .5rem;}
.mid-form-options label{display:flex;align-items:center;gap:.6rem;margin:0;}
.mid-form-options input{padding:0;}
.mid-form .formbutton3{max-width:320px;display:block;margin:2rem auto 0;}



/* ── About MID Festival ── */

.mid-about-festival {
	background: var(--ps-light);
	padding: 4rem 2rem;
	border-bottom: 1px solid var(--ps-gray-200);
}

.mid-about-festival-grid {
	max-width: 1050px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 280px 1fr;
	gap: 4rem;
	align-items: center;
}

.mid-about-festival-logo {
	text-align: center;
}

.mid-about-festival-logo img {
	display: block;
	width: 100%;
	max-width: 270px;
	height: auto;
	margin: 0 auto;
}

.mid-about-festival-content h2 {
	font-size: 2.2rem;
	color: var(--ps-dark);
	margin: .3rem 0 1.2rem;
}

.mid-about-festival-content p {
	color: var(--ps-gray-700);
	line-height: 1.8;
	margin: 0 0 1rem;
}

.mid-about-festival-tags {
	display: flex;
	flex-wrap: wrap;
	gap: .65rem;
	margin: 1.7rem 0 2rem;
}

.mid-about-festival-tags span {
	display: inline-block;
	padding: .55rem .85rem;
	background: var(--ps-gray-100);
	border: 1px solid var(--ps-gray-200);
	border-radius: 999px;
	color: var(--ps-gray-700);
	font-size: .85rem;
	font-weight: 600;
}

.mid-about-festival-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}
/* ── End of About MID Festival ── */

@media(max-width:768px){
	.mid-hero h1{font-size:2.4rem;}
	.mid-offer{grid-template-columns:1fr;}
	.mid-price{flex-direction:column;gap:.4rem;}
	.mid-price strong{font-size:3.8rem;}
	.mid-qr-box{grid-template-columns:1fr;text-align:center;}
	.mid-qr-icon{margin:0 auto;}
	.mid-form{padding:1.4rem;}
	.mid-form-options{grid-template-columns:1fr;}


	/* ── About MID Festival ── */

	.mid-about-festival {
		padding: 3rem 1.5rem;
	}

	.mid-about-festival-grid {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.mid-about-festival-logo img {
		max-width: 220px;
	}

	.mid-about-festival-content {
		text-align: center;
	}

	.mid-about-festival-tags,
	.mid-about-festival-actions {
		justify-content: center;
	}

	.mid-about-festival-content h2 {
		font-size: 1.8rem;
	}
	/* ── End of About MID Festival ── */
}