/* =====================================================================
   food-line.fr — Landing « Ouvrir un compte PRO »
   Direction : corporate clair & éditorial. AUCUN fond bleu — navy réservé
   au texte/titres, rouge en accent, fonds crème/blanc, filets fins, beaucoup
   de blanc. Display serif Fraunces + corps Plus Jakarta Sans. Scopé .flcp /
   .flcp-page pour ne pas déborder sur le thème.
   ===================================================================== */

.flcp{
	--navy:#002d72;
	--navy-deep:#001a44;
	--red:#c0392b;
	--red-deep:#a02417;
	--cream:#faf7f1;     /* fond chaud principal */
	--sand:#f3efe6;      /* fond alterné légèrement plus profond */
	--paper:#ffffff;
	--ink:#23262e;       /* texte courant (gris chaud neutre, pas bleu) */
	--muted:#6c7280;
	--line:#e7e1d4;      /* filet chaud */
	--line-strong:#d8d1c0;
	--ring:rgba(0,45,114,.16);
	--shadow:0 26px 60px -34px rgba(40,33,16,.42);
	--shadow-sm:0 10px 26px -18px rgba(40,33,16,.4);
	--radius:18px;

	font-family:'Plus Jakarta Sans',system-ui,sans-serif;
	color:var(--ink);
	background:var(--cream);
	line-height:1.62;
	-webkit-font-smoothing:antialiased;
	overflow-x:clip;
}
.flcp *,.flcp *::before,.flcp *::after{box-sizing:border-box;}

/* ── Neutralise l'habillage du thème (titre, fil d'Ariane, gouttières) ── */
.flcp-page #primary,
.flcp-page #main,
.flcp-page .flcp-wrapper,
.flcp-page .content-area{max-width:none!important;width:auto!important;margin:0!important;padding:0!important;}
.flcp-page .page-header,
.flcp-page .entry-header,
.flcp-page .shoptimizer-breadcrumb,
.flcp-page .woocommerce-breadcrumb,
.flcp-page .title-container,
.flcp-page #page-header{display:none!important;}
.flcp-page #content,.flcp-page .site-content{padding-top:0!important;}

/* ── Briques communes ─────────────────────────────────────────────── */
.flcp-wrap{max-width:1140px;margin:0 auto;padding:0 24px;width:100%;}
.flcp-section{padding:clamp(54px,7.5vw,100px) 0;}

.flcp-eyebrow{
	display:inline-flex;align-items:center;gap:10px;margin:0 0 16px;
	font-size:.76rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
	color:var(--red);
}
.flcp-eyebrow::before{content:"";width:26px;height:2px;background:var(--red);display:inline-block;}
.flcp-eyebrow--light{color:var(--red);}      /* sections désormais claires */

.flcp-h2{
	font-family:'Fraunces',Georgia,serif;
	font-weight:600;font-size:clamp(1.7rem,3.5vw,2.6rem);line-height:1.1;
	letter-spacing:-.01em;margin:0 0 .7em;color:var(--navy);
	max-width:20ch;text-wrap:balance;
}
.flcp-h2--light{color:var(--navy);}

.flcp-btn{
	display:inline-flex;align-items:center;gap:.5em;
	padding:15px 28px;border-radius:10px;
	font-weight:700;font-size:1rem;text-decoration:none;
	transition:transform .2s ease,box-shadow .25s,background .2s,color .2s,border-color .2s;
	white-space:nowrap;
}
.flcp-btn--primary{background:var(--red);color:#fff;box-shadow:0 14px 28px -14px rgba(192,57,43,.7);}
.flcp-btn--primary:hover{background:var(--red-deep);transform:translateY(-2px);color:#fff;}
.flcp-btn--ghost{color:var(--navy);border:1.5px solid var(--line-strong);background:#fff;}
.flcp-btn--ghost:hover{border-color:var(--navy);transform:translateY(-2px);color:var(--navy);}

/* ── HERO (clair) ─────────────────────────────────────────────────── */
.flcp-hero{
	position:relative;isolation:isolate;overflow:hidden;
	background:var(--cream);
	border-bottom:1px solid var(--line);
	padding:clamp(40px,6vw,64px) 0 clamp(48px,6vw,76px);
}
.flcp-hero::before{ /* fin liseré rouge en haut de page = signature pro */
	content:"";position:absolute;top:0;left:0;right:0;height:4px;
	background:linear-gradient(90deg,var(--red),var(--red-deep));
}
/* trame de points discrète pour la texture (pas un aplat) */
.flcp-hero__grain{
	position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.5;
	background-image:radial-gradient(rgba(0,45,114,.07) 1.2px,transparent 1.3px);
	background-size:22px 22px;
	-webkit-mask:radial-gradient(120% 90% at 80% 0%,#000,transparent 70%);
	        mask:radial-gradient(120% 90% at 80% 0%,#000,transparent 70%);
}
.flcp-hero__inner{max-width:1140px;margin:0 auto;padding:0 24px;position:relative;}
.flcp-hero__brand img{height:46px;width:auto;margin-bottom:clamp(26px,4.5vw,40px);filter:none;}
.flcp-kicker{
	display:inline-block;padding:6px 14px;border-radius:999px;
	background:#fff;border:1px solid var(--line-strong);
	font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);
	margin-bottom:22px;box-shadow:var(--shadow-sm);
}
.flcp-hero__title{
	font-family:'Fraunces',Georgia,serif;
	font-weight:600;font-size:clamp(2.3rem,6vw,4.2rem);line-height:1.04;
	letter-spacing:-.018em;margin:0 0 .5em;max-width:17ch;color:var(--navy);text-wrap:balance;
}
.flcp-hero__title em{
	font-style:italic;font-weight:600;color:var(--navy);
	background:linear-gradient(transparent 72%,rgba(192,57,43,.22) 0);
}
.flcp-hero__lead{
	font-size:clamp(1.05rem,1.6vw,1.28rem);color:var(--muted);
	max-width:56ch;margin:0 0 32px;font-weight:400;
}
.flcp-hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:34px;}
.flcp-chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px 14px;margin:0;padding:0;}
.flcp-chips li{
	display:flex;align-items:center;gap:9px;font-size:.9rem;font-weight:600;color:var(--ink);
	background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 15px;
}
.flcp-chips span{
	display:grid;place-items:center;width:18px;height:18px;border-radius:50%;
	background:var(--navy);color:#fff;font-size:.62rem;font-weight:800;
}
.flcp-hero__wave{display:none;} /* plus de transition bleu→clair */

/* ── BÉNÉFICES ────────────────────────────────────────────────────── */
.flcp-benefits{background:var(--paper);}
.flcp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(232px,1fr));gap:18px;margin-top:6px;}
.flcp-card{
	background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);
	padding:28px 24px;position:relative;overflow:hidden;
	transition:transform .3s cubic-bezier(.2,.7,.3,1),box-shadow .3s,border-color .3s;
}
.flcp-card::before{
	content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--red);transition:width .35s ease;
}
.flcp-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--line-strong);}
.flcp-card:hover::before{width:100%;}
.flcp-card__ico{
	display:grid;place-items:center;width:52px;height:52px;border-radius:13px;
	background:#fff;border:1px solid var(--line);font-size:1.6rem;margin-bottom:16px;
}
.flcp-card__t{font-size:1.16rem;font-weight:800;margin:0 0 .35em;color:var(--navy);}
.flcp-card__d{margin:0;color:var(--muted);font-size:.95rem;}

/* ── COMMENT ÇA MARCHE (clair, alterné) ───────────────────────────── */
.flcp-how{background:var(--sand);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.flcp-steps{
	list-style:none;margin:18px 0 0;padding:0;display:grid;gap:0;
	grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
	background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
}
.flcp-step{
	display:flex;gap:18px;align-items:flex-start;padding:30px 26px;
	border-right:1px solid var(--line);transition:background .25s;
}
.flcp-step:last-child{border-right:0;}
.flcp-step:hover{background:var(--cream);}
.flcp-step__n{
	display:grid;place-items:center;flex:0 0 auto;width:46px;height:46px;border-radius:50%;
	border:2px solid var(--navy);color:var(--navy);
	font-family:'Fraunces',serif;font-weight:600;font-size:1.15rem;line-height:1;
}
.flcp-step__t{font-size:1.08rem;font-weight:800;margin:0 0 .3em;color:var(--navy);}
.flcp-step__d{margin:0;color:var(--muted);font-size:.93rem;}
@media(max-width:719px){
	.flcp-step{border-right:0;border-bottom:1px solid var(--line);}
	.flcp-step:last-child{border-bottom:0;}
}

/* ── FORMULAIRE ───────────────────────────────────────────────────── */
.flcp-formsec{background:var(--paper);}
.flcp-formgrid{display:grid;grid-template-columns:1fr;gap:34px;align-items:start;}
@media(min-width:980px){
	.flcp-formgrid{grid-template-columns:.82fr 1.18fr;gap:54px;}
	.flcp-pitch{position:sticky;top:32px;}
}
.flcp-pitch__lead{color:var(--muted);font-size:1.05rem;margin:0 0 22px;max-width:42ch;}
.flcp-reassure{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:12px;}
.flcp-reassure li{display:flex;gap:12px;align-items:flex-start;font-weight:600;color:var(--ink);font-size:.97rem;}
.flcp-reassure__ck{
	display:grid;place-items:center;flex:0 0 auto;width:23px;height:23px;border-radius:50%;
	background:var(--navy);color:#fff;font-size:.7rem;font-weight:800;margin-top:1px;
}
.flcp-quote{
	margin:0;padding:22px 24px;background:var(--cream);border-radius:var(--radius);
	border:1px solid var(--line);border-left:4px solid var(--red);
}
.flcp-quote blockquote{margin:0 0 8px;font-family:'Fraunces',serif;font-style:italic;
	font-size:1.1rem;line-height:1.42;color:var(--navy);}
.flcp-quote figcaption{font-size:.84rem;color:var(--muted);font-weight:600;}

.flcp-formcard{
	background:var(--paper);border:1px solid var(--line-strong);border-radius:20px;
	box-shadow:var(--shadow);overflow:hidden;
}
.flcp-formcard__head{
	display:flex;align-items:center;justify-content:space-between;gap:12px;
	padding:22px 28px;background:var(--cream);border-bottom:1px solid var(--line);
}
.flcp-formcard__head h3{margin:0;font-family:'Fraunces',serif;font-weight:600;font-size:1.35rem;color:var(--navy);}
.flcp-formcard__badge{
	font-size:.78rem;font-weight:700;color:var(--navy);background:#fff;
	padding:6px 13px;border-radius:999px;border:1px solid var(--line-strong);white-space:nowrap;
}
.flcp-form{padding:clamp(22px,3vw,34px);}

/* ── Restyle WPForms (scopé) ─────────────────────────────────────── */
.flcp-form .wpforms-container{margin:0;}
.flcp-form .wpforms-form .wpforms-field{padding:0 0 16px;}
.flcp-form .wpforms-field-label{
	font-weight:700!important;font-size:.84rem!important;color:var(--navy)!important;
	margin-bottom:7px!important;letter-spacing:.01em;
}
.flcp-form .wpforms-required-label{color:var(--red)!important;}
.flcp-form input[type=text],
.flcp-form input[type=email],
.flcp-form input[type=tel],
.flcp-form input[type=url],
.flcp-form input[type=number],
.flcp-form textarea,
.flcp-form select{
	width:100%!important;border:1.5px solid var(--line-strong)!important;background:#fcfbf8!important;
	border-radius:11px!important;padding:12px 14px!important;font-size:1rem!important;
	font-family:inherit!important;color:var(--ink)!important;box-shadow:none!important;
	transition:border-color .2s,box-shadow .2s,background .2s;
}
.flcp-form input::placeholder,.flcp-form textarea::placeholder{color:#9aa1b4;}
.flcp-form input:focus,
.flcp-form textarea:focus,
.flcp-form select:focus{
	border-color:var(--navy)!important;background:#fff!important;
	box-shadow:0 0 0 4px var(--ring)!important;outline:none!important;
}
.flcp-form textarea{min-height:118px;resize:vertical;}
.flcp-form .wpforms-field-description{color:var(--muted)!important;font-size:.81rem!important;}
@media(min-width:560px){
	.flcp-form .wpforms-form{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;}
	.flcp-form .wpforms-form .wpforms-field,
	.flcp-form .wpforms-form .wpforms-submit-container,
	.flcp-form .wpforms-form .wpforms-field-textarea,
	.flcp-form .wpforms-form > .wpforms-error,
	.flcp-form .wpforms-form .wpforms-recaptcha-container{grid-column:1 / -1;}
	.flcp-form .wpforms-form .wpforms-field-text,
	.flcp-form .wpforms-form .wpforms-field-email,
	.flcp-form .wpforms-form .wpforms-field-phone,
	.flcp-form .wpforms-form .wpforms-field-number,
	.flcp-form .wpforms-form .wpforms-field-url{grid-column:span 1;}
}
.flcp-form .wpforms-submit-container{padding-top:6px;}
.flcp-form button.wpforms-submit,
.flcp-form .wpforms-submit{
	width:100%;background:var(--red)!important;color:#fff!important;border:0!important;
	border-radius:11px!important;padding:16px 28px!important;font-size:1.05rem!important;
	font-weight:800!important;cursor:pointer;letter-spacing:.01em;
	box-shadow:0 16px 28px -16px rgba(192,57,43,.75)!important;
	transition:transform .2s,background .2s!important;font-family:inherit!important;
}
.flcp-form button.wpforms-submit:hover{background:var(--red-deep)!important;transform:translateY(-2px);}
.flcp-form .wpforms-error{color:var(--red)!important;font-size:.82rem!important;}
.flcp-form .wpforms-confirmation-container-full{
	background:#eef7ee!important;border:1px solid #bfe0bf!important;border-radius:13px!important;
	color:#1d5b2a!important;padding:18px 20px!important;font-weight:600;
}

/* ── BANDEAU DE CONFIANCE (clair) ─────────────────────────────────── */
.flcp-trust{background:var(--cream);border-top:1px solid var(--line);padding:38px 0;}
.flcp-trust__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:22px;text-align:center;}
.flcp-trust__item{display:flex;flex-direction:column;gap:3px;position:relative;}
.flcp-trust__item:not(:last-child)::after{
	content:"";position:absolute;right:-11px;top:50%;transform:translateY(-50%);
	width:1px;height:40px;background:var(--line-strong);
}
.flcp-trust__item strong{font-family:'Fraunces',serif;font-size:1.7rem;font-weight:600;color:var(--navy);}
.flcp-trust__item span{font-size:.85rem;color:var(--muted);font-weight:600;}
@media(max-width:639px){.flcp-trust__item::after{display:none;}}

/* ── Animations de chargement (cascade) ──────────────────────────── */
@keyframes flcp-rise{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:none;}}
.flcp-rise{opacity:0;animation:flcp-rise .7s cubic-bezier(.2,.7,.3,1) forwards;animation-delay:var(--d,0s);}
.flcp-card{opacity:0;animation:flcp-rise .6s cubic-bezier(.2,.7,.3,1) forwards;animation-delay:calc(.08s + var(--i,0) * .08s);}
@media(prefers-reduced-motion:reduce){
	.flcp-rise,.flcp-card{animation:none;opacity:1;transform:none;}
	.flcp-btn,.flcp-card,.flcp-step{transition:none;}
}
html{scroll-behavior:smooth;}
