/* ==========================================================
   Locals form pages — "Add your food place" and "Add your services"
   Same page design as "Add your business" and "Add your events":
   dark-blue hero, white form card, side cards.
   ========================================================== */

body:has(.iclf-hero) { overflow-x: hidden; overflow-x: clip; }
body:has(.iclf-hero) .entry-header { display: none; }
body:has(.iclf-hero) .entry-content,
body:has(.iclf-hero) .site-main,
body:has(.iclf-hero) .inside-article { margin-top: 0 !important; }
body:has(.iclf-hero) .site-content,
body:has(.iclf-hero) #page { max-width: 100% !important; padding: 0 !important; }

.iclf {
	--o: #f36536;
	--teal: #008080;
	--ink: #0f172a;
	--txt: #334155;
	--mut: #64748b;
	--line: #e2e8f0;
	width: 100vw !important;
	max-width: none !important;
	margin: 0 0 0 calc(50% - 50vw) !important;
	background: #f8fafc;
	color: var(--ink);
	padding-bottom: clamp(50px, 7vw, 90px);
}
.iclf * { box-sizing: border-box; }

/* ---------- Hero ---------- */
.iclf-hero {
	position: relative;
	overflow: hidden;
	color: #fff;
	background: radial-gradient(1000px 560px at 80% 30%, #1f6f9a 0%, #154a7a 45%, #0d2f50 100%);
}
.iclf-hero[style*="--img"]::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--img) center / cover;
	opacity: 0.22;
}
.iclf-hero[style*="--img"]::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(13, 47, 80, 0.9) 0%, rgba(13, 47, 80, 0.5) 60%, rgba(13, 47, 80, 0.25) 100%);
}
.iclf-hero-in {
	position: relative;
	z-index: 1;
	max-width: 1180px;
	margin: 0 auto;
	padding: 150px clamp(20px, 4vw, 40px) 130px;
}
.iclf-eye {
	margin: 0 0 0.6em;
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #ffc66b;
}
.iclf h1 {
	margin: 0 0 14px;
	font-size: clamp(2.3rem, 5vw, 4rem);
	line-height: 1.05;
	font-weight: 800;
	color: #fff;
	max-width: 14em;
}
.iclf-lead {
	margin: 0;
	max-width: 38em;
	font-size: 1.1rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.9);
}
.iclf-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 24px;
}
.iclf-pills span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 14px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.24);
	font-size: 0.88rem;
	font-weight: 700;
}

/* ---------- Body: form card + side cards ---------- */
.iclf-body {
	max-width: 1180px;
	margin: -80px auto 0;
	padding: 0 clamp(20px, 4vw, 40px);
	display: grid;
	grid-template-columns: minmax(0, 1fr) 330px;
	gap: 28px;
	align-items: start;
	position: relative;
	z-index: 2;
}
.iclf-form {
	position: relative;
	padding: clamp(22px, 3.5vw, 40px);
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 20px 50px rgba(15, 23, 42, 0.12);
	border: 1px solid var(--line);
}
.iclf-form > h2 {
	margin: 0 0 6px;
	font-size: 1.6rem;
	font-weight: 800;
	color: var(--ink);
}
.iclf-form > p {
	margin: 0 0 18px;
	color: var(--mut);
	line-height: 1.6;
}

.iclf-side {
	display: grid;
	gap: 16px;
	position: sticky;
	top: 100px;
}
.iclf-card {
	padding: 22px;
	border-radius: 20px;
	background: #fff;
	border: 1px solid var(--line);
}
.iclf-card h3 {
	margin: 0 0 12px;
	font-size: 1.05rem;
	font-weight: 800;
	color: var(--ink);
}
.iclf-card ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 10px;
}
.iclf-card li {
	display: flex;
	gap: 10px;
	margin: 0;
	font-size: 0.92rem;
	line-height: 1.5;
	color: var(--txt);
}
.iclf-card li b { flex: none; }
.iclf-card p {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.6;
	color: #475569;
}
.iclf-card a { color: var(--teal); font-weight: 700; text-decoration: none; }
.iclf-card--dark { background: linear-gradient(135deg, #0f172a, #154a7a); border: 0; color: #fff; }
.iclf-card--dark h3 { color: #fff; }
.iclf-card--dark p { color: rgba(255, 255, 255, 0.85); }
.iclf-card--dark a { color: #ffc66b; }

/* ---------- The form itself, styled like the Gravity Forms pages ---------- */
.iclf .icpf-form-wrap {
	max-width: none;
	margin: 0;
	font-family: inherit;
	color: var(--ink);
}
.iclf .icpf-form-head { display: none; }

.iclf .icpf-notice { border-radius: 16px; padding: 18px 22px; font-weight: 600; line-height: 1.6; }
.iclf .icpf-notice--ok { background: #f0fdf4; color: #14532d; border: 0; }
.iclf .icpf-notice--err { background: #fff7ed; color: #9a3412; border: 0; }

.iclf .icpf-form fieldset {
	margin: 0 0 8px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
}
.iclf .icpf-form legend {
	display: block;
	width: 100%;
	margin: 28px 0 22px;
	padding: 0 0 8px;
	border-bottom: 2px solid #f1f5f9;
	font-family: inherit;
	font-size: 1.2rem;
	font-weight: 800;
	color: #154a7a;
}
.iclf .icpf-form fieldset:first-of-type legend { margin-top: 0; }

.iclf .icpf-grid { gap: 22px 16px; }
.iclf .icpf-field { margin: 0; }
.iclf .icpf-field label {
	margin-bottom: 8px;
	font-size: 14px;
	font-weight: 700;
	color: var(--ink);
}
.iclf-req {
	margin-left: 4px;
	font-size: 12px;
	font-weight: 500;
	color: #c02b0a;
}

.iclf .icpf-form input[type="text"],
.iclf .icpf-form input[type="tel"],
.iclf .icpf-form input[type="email"],
.iclf .icpf-form input[type="url"],
.iclf .icpf-form select,
.iclf .icpf-form textarea {
	min-height: 48px;
	padding: 12px 14px;
	border: 1px solid #cbd5e1;
	border-radius: 12px;
	background: #f8fafc;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.4;
	color: #112337;
}
.iclf .icpf-form textarea { min-height: 130px; }
.iclf .icpf-form select {
	padding-right: 40px;
	appearance: none;
	-webkit-appearance: none;
	background: #f8fafc url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23154a7a' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center;
}
.iclf .icpf-form input:focus,
.iclf .icpf-form select:focus,
.iclf .icpf-form textarea:focus {
	border-color: var(--teal);
	background-color: #fff;
	outline: 2px solid rgba(0, 128, 128, 0.15);
	outline-offset: 0;
}
.iclf .icpf-form input[type="file"] {
	width: 100%;
	padding: 18px;
	border: 2px dashed #cbd5e1;
	border-radius: 16px;
	background: #f8fafc;
	font-family: inherit;
}

.iclf .icpf-checks {
	gap: 10px 22px;
	margin-top: 22px;
	font-size: 0.95rem;
	font-weight: 500;
	color: var(--txt);
}
.iclf .icpf-consent {
	margin-top: 22px;
	font-size: 0.95rem;
	font-weight: 500;
	color: var(--txt);
}
.iclf .icpf-form input[type="checkbox"] { accent-color: var(--teal); }

.iclf .icpf-form .icpf-submit {
	margin-top: 26px;
	min-height: 0;
	padding: 15px 32px;
	border: 0;
	border-radius: 999px;
	background: var(--o);
	color: #fff;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 800;
	box-shadow: 0 8px 24px rgba(243, 101, 54, 0.3);
}

@media (max-width: 960px) {
	.iclf-body { grid-template-columns: 1fr; }
	.iclf-side { position: static; }
}