.bayo-contact-page{max-width:1180px;margin:0 auto;color:#111827}.bayo-contact-page *{box-sizing:border-box}.bayo-contact-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:32px;align-items:center;padding:48px;border-radius:24px;background:linear-gradient(135deg,#f0fdf4 0%,#fff 58%,#f5f3ff 100%);border:1px solid #dcfce7;margin-bottom:28px}.bayo-contact-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-100px;top:-130px;background:rgba(22,163,74,.08)}.bayo-contact-brand{margin-bottom:20px}.bayo-contact-logo{display:block;max-width:172px;max-height:48px;width:auto;height:auto}.bayo-contact-kicker,.bayo-contact-card-heading>span{display:block;font-size:12px;font-weight:800;letter-spacing:.13em;color:#15803d;margin-bottom:10px}.bayo-contact-hero h1{font-size:clamp(34px,5vw,54px);line-height:1.05;letter-spacing:-.04em;margin:0 0 16px;color:#111827}.bayo-contact-hero-copy>p{max-width:680px;margin:0;font-size:18px;line-height:1.7;color:#4b5563}.bayo-contact-quick-card{position:relative;z-index:1;display:flex;gap:16px;padding:22px;border-radius:18px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.09);border:1px solid #e5e7eb}.bayo-contact-quick-icon{width:46px;height:46px;display:grid;place-items:center;flex:none;border-radius:14px;background:#16a34a;color:#fff;font-size:22px}.bayo-contact-quick-card strong,.bayo-contact-quick-card a,.bayo-contact-quick-card span{display:block}.bayo-contact-quick-card strong{font-size:17px;margin-bottom:4px}.bayo-contact-quick-card a{font-weight:700;color:#15803d;text-decoration:none;word-break:break-word}.bayo-contact-quick-card span{font-size:13px;line-height:1.5;color:#6b7280;margin-top:7px}.bayo-contact-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.55fr);gap:28px;align-items:start}.bayo-contact-form-card,.bayo-contact-aside-card,.bayo-contact-safety-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 14px 40px rgba(15,23,42,.06)}.bayo-contact-form-card{padding:34px}.bayo-contact-card-heading{margin-bottom:26px}.bayo-contact-card-heading h2,.bayo-contact-aside h2{margin:0 0 8px;font-size:28px;letter-spacing:-.025em}.bayo-contact-card-heading p{margin:0;color:#6b7280}.bayo-contact-form{display:grid;gap:18px}.bayo-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bayo-contact-form label>span{display:block;font-size:14px;font-weight:700;color:#374151;margin-bottom:8px}.bayo-contact-form input,.bayo-contact-form select,.bayo-contact-form textarea{width:100%;border:1px solid #d1d5db;border-radius:12px;background:#fff;color:#111827;font:inherit;padding:13px 14px;outline:none;transition:border-color .15s,box-shadow .15s}.bayo-contact-form textarea{resize:vertical;min-height:150px}.bayo-contact-form input:focus,.bayo-contact-form select:focus,.bayo-contact-form textarea:focus{border-color:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.12)}.bayo-contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:fit-content;min-width:180px;border:0;border-radius:12px;background:#16a34a;color:#fff;font-weight:800;font-size:16px;padding:14px 22px;cursor:pointer;box-shadow:0 10px 24px rgba(22,163,74,.22)}.bayo-contact-submit:hover{background:#15803d}.bayo-contact-submit span{font-size:20px}.bayo-contact-honeypot{position:absolute!important;left:-9999px!important}.bayo-contact-aside{display:grid;gap:20px}.bayo-contact-aside-card{padding:28px}.bayo-contact-aside-card ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:22px}.bayo-contact-aside-card li{display:flex;gap:14px}.bayo-contact-aside-card li>span{width:34px;height:34px;display:grid;place-items:center;flex:none;border-radius:50%;background:#f0fdf4;color:#15803d;font-weight:800}.bayo-contact-aside-card strong{display:block;margin-bottom:4px}.bayo-contact-aside-card p,.bayo-contact-safety-card p{margin:0;color:#6b7280;font-size:14px;line-height:1.55}.bayo-contact-safety-card{padding:24px;background:#166534;color:#fff;border-color:#166534}.bayo-contact-safety-card strong{display:block;font-size:18px;margin-bottom:8px}.bayo-contact-safety-card p{color:#dcfce7}.bayo-contact-notice{margin:0 0 24px;padding:15px 18px;border-radius:12px;font-weight:700}.bayo-contact-notice--success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.bayo-contact-notice--error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}@media(max-width:820px){.bayo-contact-hero,.bayo-contact-layout{grid-template-columns:1fr}.bayo-contact-hero{padding:32px 26px}.bayo-contact-quick-card{max-width:520px}.bayo-contact-layout{gap:20px}}@media(max-width:560px){.bayo-contact-page{margin:0 -4px}.bayo-contact-hero{padding:27px 20px;border-radius:18px;gap:24px;margin-bottom:18px}.bayo-contact-hero h1{font-size:34px}.bayo-contact-hero-copy>p{font-size:16px}.bayo-contact-form-card{padding:24px 18px;border-radius:16px}.bayo-contact-grid{grid-template-columns:1fr}.bayo-contact-submit{width:100%}.bayo-contact-aside-card,.bayo-contact-safety-card{padding:22px;border-radius:16px}}

/* 5.4.16: simple Jiji-style contact page */
.bayo-contact-page--simple {
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 20px 64px;
}
.bayo-contact-simple-card {
	background: #fff;
	border: 1px solid #e6ece9;
	border-radius: 18px;
	box-shadow: 0 12px 34px rgba(25, 75, 58, .08);
	padding: 48px;
	text-align: center;
}
.bayo-contact-simple-card h1 {
	margin: 10px 0 16px;
	font-size: clamp(30px, 4vw, 44px);
	line-height: 1.15;
}
.bayo-contact-simple-card p {
	max-width: 680px;
	margin: 0 auto 14px;
	color: #5d6864;
	font-size: 17px;
	line-height: 1.7;
}
.bayo-contact-email {
	display: inline-block;
	margin-top: 14px;
	color: #18895b;
	font-size: 20px;
	font-weight: 800;
	text-decoration: none;
}
.bayo-contact-email:hover,
.bayo-contact-email:focus {
	text-decoration: underline;
}
@media (max-width: 640px) {
	.bayo-contact-page--simple { padding: 20px 14px 40px; }
	.bayo-contact-simple-card { padding: 30px 20px; border-radius: 14px; }
	.bayo-contact-simple-card p { font-size: 15px; }
	.bayo-contact-email { font-size: 17px; }
}
