/* MFR - Portes Ouvertes : page publique autonome */

:root{
	--mpo-gold:#CDAC5F;
	--mpo-gold-dark:#b8944a;
	--mpo-ink:#262421;
	--mpo-muted:#6d6a63;
	--mpo-line:#e6e1d7;
	--mpo-bg:#f4f1ea;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
.mpo-body{
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	color:var(--mpo-ink);
	background:
		radial-gradient(1200px 500px at 100% -10%, rgba(205,172,95,.14), transparent 60%),
		radial-gradient(1000px 400px at -10% 110%, rgba(205,172,95,.10), transparent 55%),
		var(--mpo-bg);
	min-height:100vh;
	display:flex;
	flex-direction:column;
	-webkit-font-smoothing:antialiased;
}

/* Barre supérieure */
.mpo-topbar{
	display:flex;align-items:center;justify-content:space-between;
	padding:14px 22px;background:rgba(255,255,255,.85);backdrop-filter:blur(6px);
	border-bottom:1px solid var(--mpo-line);position:sticky;top:0;z-index:10;
}
.mpo-back{
	color:var(--mpo-gold-dark);text-decoration:none;font-weight:600;font-size:15px;
	padding:8px 14px;border-radius:20px;border:1px solid transparent;transition:all .15s ease;
}
.mpo-back:hover{background:#fff;border-color:var(--mpo-line);}
.mpo-site-name{font-weight:700;color:var(--mpo-ink);font-size:15px;}

/* Contenu */
.mpo-main{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:40px 18px;}
.mpo-card{
	width:100%;max-width:860px;background:#fff;border:1px solid var(--mpo-line);
	border-radius:20px;box-shadow:0 24px 60px rgba(60,50,20,.10);padding:40px;
}

.mpo-logo{display:block;height:58px;width:auto;margin:0 auto 18px;}

.mpo-header{text-align:center;margin-bottom:28px;}
.mpo-header h1{font-size:32px;line-height:1.15;margin:0 0 10px;letter-spacing:-.5px;}
.mpo-sub{font-size:17px;color:var(--mpo-ink);margin:0 0 8px;font-weight:600;}
.mpo-intro{font-size:15px;color:var(--mpo-muted);margin:0;line-height:1.5;max-width:620px;margin:0 auto;}

/* Grille du formulaire condensée */
.mpo-form-grid{
	display:grid;grid-template-columns:repeat(2,1fr);gap:14px 18px;
}
.mpo-col-full{grid-column:1 / -1;}
.mpo-col-half{grid-column:span 1;}

.mpo-field{display:flex;flex-direction:column;min-width:0;}
.mpo-field label{font-size:13px;font-weight:600;margin-bottom:5px;color:var(--mpo-ink);}
.mpo-req{color:#d24b45;}

.mpo-field input[type=text],
.mpo-field input[type=email],
.mpo-field input[type=tel],
.mpo-field input[type=number],
.mpo-field input[type=date],
.mpo-field select,
.mpo-field textarea{
	width:100%;padding:10px 13px;font-size:14px;font-family:inherit;color:var(--mpo-ink);
	background:#fff;border:1px solid var(--mpo-line);border-radius:10px;line-height:1.35;
	transition:border-color .12s ease,box-shadow .12s ease;-webkit-appearance:none;appearance:none;
}
.mpo-field textarea{min-height:84px;resize:vertical;}
.mpo-field select{
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer;
}
.mpo-field input:focus,.mpo-field select:focus,.mpo-field textarea:focus{
	outline:none;border-color:var(--mpo-gold);box-shadow:0 0 0 3px rgba(205,172,95,.18);
}
.mpo-field input.mpo-invalid,.mpo-field select.mpo-invalid,.mpo-field textarea.mpo-invalid{
	border-color:#d24b45;box-shadow:0 0 0 3px rgba(210,75,69,.12);
}
.mpo-field input[type=file]{font-size:13px;padding:8px;border:1px dashed var(--mpo-line);border-radius:10px;background:#fbfaf6;width:100%;}
.mpo-hint{display:block;margin-top:4px;font-size:11px;color:var(--mpo-muted);}

.mpo-checkline{flex-direction:row;display:flex;align-items:flex-start;gap:8px;font-size:14px;font-weight:500;}
.mpo-checkline input{margin-top:3px;}

/* Actions */
.mpo-actions{margin-top:24px;text-align:center;}

/* Boutons : #CDAC5F forcé dans tous les états */
.mpo-btn,.mpo-btn:link,.mpo-btn:visited,
.mpo-submit,.mpo-submit:link,.mpo-submit:visited{
	display:inline-block;background:#CDAC5F !important;background-image:none !important;color:#fff !important;
	border:none !important;border-radius:30px;padding:14px 40px;font-size:16px;font-weight:700;font-family:inherit;
	cursor:pointer;text-decoration:none !important;text-shadow:none !important;box-shadow:0 6px 16px rgba(205,172,95,.35);
	transition:transform .05s ease,filter .15s ease;
}
.mpo-btn:hover,.mpo-btn:focus,.mpo-btn:active,.mpo-btn:focus-visible,
.mpo-submit:hover,.mpo-submit:focus,.mpo-submit:active,.mpo-submit:focus-visible{
	background:#CDAC5F !important;color:#fff !important;outline:none !important;filter:brightness(.94);
}
.mpo-submit:active{transform:translateY(1px);}
.mpo-submit:disabled{opacity:.65;cursor:not-allowed;}

/* Feedback */
.mpo-feedback{margin-top:16px;padding:12px 16px;border-radius:10px;font-size:14px;line-height:1.5;text-align:center;}
.mpo-feedback.is-error{background:#fdeceb;color:#b3261e;border:1px solid #f3c1bd;}

.mpo-rc-note{margin-top:12px;font-size:11px;color:var(--mpo-muted);text-align:center;}
.mpo-rc-note a{color:var(--mpo-gold-dark);}

.mpo-hp{position:absolute !important;left:-9999px !important;height:0;width:0;overflow:hidden;}

/* Page fermée */
.mpo-card-closed{text-align:center;max-width:640px;}
.mpo-badge-closed{display:inline-block;background:#f0e7d0;color:#8a6d2b;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:1px;padding:6px 14px;border-radius:20px;margin-bottom:18px;}
.mpo-card-closed h1{font-size:28px;margin:0 0 14px;}
.mpo-closed-text{color:var(--mpo-muted);font-size:16px;line-height:1.6;margin:0 0 26px;}

/* Remerciement */
.mpo-thanks{text-align:center;padding:20px 10px;}
.mpo-thanks-icon{
	width:74px;height:74px;border-radius:50%;background:#CDAC5F;color:#fff;font-size:38px;line-height:74px;
	margin:0 auto 20px;box-shadow:0 10px 24px rgba(205,172,95,.4);
}
.mpo-thanks h2{font-size:26px;margin:0 0 12px;}
.mpo-thanks p{color:var(--mpo-muted);font-size:16px;line-height:1.6;max-width:520px;margin:0 auto 26px;}

/* Pied */
.mpo-footer{text-align:center;padding:22px;color:var(--mpo-muted);font-size:13px;}

/* Badge reCAPTCHA discret en bas à gauche (icône seule, se déplie au survol) */
.grecaptcha-badge{left:4px !important;right:auto !important;width:70px !important;overflow:hidden !important;box-shadow:0 0 6px rgba(0,0,0,.12) !important;transition:width .3s ease !important;}
.grecaptcha-badge:hover{width:256px !important;}

/* Responsive */
@media (max-width:680px){
	.mpo-card{padding:26px 20px;border-radius:16px;}
	.mpo-header h1{font-size:26px;}
	.mpo-form-grid{grid-template-columns:1fr;gap:12px;}
	.mpo-col-half{grid-column:1 / -1;}
	.mpo-submit,.mpo-btn{width:100%;}
	.mpo-topbar{padding:12px 16px;}
}
