/* Contact Form 7 skin matching the Figma "Send us a message" card. */
.pn-cf7 .wpcf7-form { display: flex; flex-direction: column; gap: 18px; font-family: Inter, sans-serif; }
.pn-cf7 .wpcf7-form > p, .pn-cf7 .pn-f { margin: 0; display: flex; flex-direction: column; gap: 8px; }
.pn-cf7 .pn-f-row { display: flex; gap: 16px; }
.pn-cf7 .pn-f-row > .pn-f { flex: 1 1 0; min-width: 0; }
.pn-cf7 label, .pn-cf7 legend { font-size: 13.5px; font-weight: 600; color: #33415a; line-height: 1.2; padding: 0; }
.pn-cf7 label abbr { color: #e5484d; font-weight: 700; text-decoration: none; margin-left: 2px; }
.pn-cf7 br { display: none; }
.pn-cf7 input[type=text], .pn-cf7 input[type=email], .pn-cf7 input[type=tel], .pn-cf7 select, .pn-cf7 textarea {
	width: 100%; height: 50px; padding: 0 16px; background: #f7f9fd; border: 1.3px solid #e2e9f3; border-radius: 12px;
	font: 400 15px/1.2 Inter, sans-serif; color: #101b33; box-shadow: none; transition: border-color .2s, background-color .2s; }
.pn-cf7 textarea { height: 128px; padding: 14px 16px; resize: vertical; }
.pn-cf7 ::placeholder { color: #98a6bc; opacity: 1; }
.pn-cf7 select { appearance: none; -webkit-appearance: none; color: #98a6bc; cursor: pointer;
	background: #f7f9fd url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M0 0h10L5 6z' fill='%237a8aa6'/%3E%3C/svg%3E") no-repeat right 18px center / 10px 6px; }
.pn-cf7 select:has(option:checked:not([value=""])) { color: #101b33; }
.pn-cf7 input:focus, .pn-cf7 select:focus, .pn-cf7 textarea:focus { outline: none; border-color: #00a0e3; background-color: #fff; }
.pn-cf7 fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.pn-cf7 .pn-f-chips legend { margin-bottom: 10px; }
.pn-cf7 .pn-f-chips .wpcf7-checkbox { display: flex; flex-wrap: wrap; gap: 10px; }
.pn-cf7 .pn-f-chips .wpcf7-list-item { margin: 0; }
.pn-cf7 .pn-f-chips .wpcf7-list-item label { display: inline-flex; align-items: center; gap: 9px; padding: 9px 14px 9px 12px; background: #f7f9fd; border: 1.3px solid #e2e9f3; border-radius: 10px; cursor: pointer; font-size: 14px; font-weight: 500; color: #42506c; transition: border-color .2s, background-color .2s; }
.pn-cf7 .pn-f-chips input[type=checkbox] { appearance: none; -webkit-appearance: none; margin: 0; width: 16px; height: 16px; border: 1.3px solid #c6d2e4; border-radius: 5px; background: #fff; display: grid; place-content: center; cursor: pointer; }
.pn-cf7 .pn-f-chips input[type=checkbox]:checked { background: #00a0e3; border-color: #00a0e3; }
.pn-cf7 .pn-f-chips input[type=checkbox]:checked::after { content: ""; width: 8px; height: 5px; border: 2px solid #fff; border-top: 0; border-right: 0; transform: rotate(-45deg) translate(1px, -1px); }
.pn-cf7 .pn-f-chips label:has(input:checked) { border-color: #00a0e3; background: #eef8fe; }
.pn-cf7 input:focus-visible, .pn-cf7 .pn-f-chips input:focus-visible { outline: 2px solid #00a0e3; outline-offset: 2px; }
.pn-cf7 .pn-f-note { font-size: 12.5px; line-height: 18px; color: #8a97ae; }
.pn-cf7 .wpcf7-submit, .pn-cf7 .pn-f-submit { width: 100%; padding: 16px 20px; border: 0; border-radius: 12px; cursor: pointer;
	background-image: linear-gradient(170deg, #00a0e3 0%, #2a4a98 78%); box-shadow: 0 10px 24px rgba(11,43,87,.32);
	font: 700 16px/1.2 Inter, sans-serif; color: #fff; transition: filter .2s, transform .2s; }
.pn-cf7 .wpcf7-submit:hover { filter: brightness(1.06); transform: translateY(-1px); }
.pn-cf7 .wpcf7-spinner { margin: 8px auto 0; display: block; }
.pn-cf7 .wpcf7-not-valid-tip { font-size: 12.5px; color: #e5484d; margin-top: 2px; }
.pn-cf7 .wpcf7-not-valid { border-color: #e5484d !important; }
.pn-cf7 .wpcf7-response-output { margin: 0 !important; border-radius: 12px; padding: 12px 16px !important; font-size: 14px; }
@media (max-width: 600px) { .pn-cf7 .pn-f-row { flex-direction: column; gap: 18px; } }

/* Pill tabs (Nested Tabs) */
.pn-pill-tabs .e-n-tabs-heading { flex-wrap: wrap; }
.pn-pill-tabs .e-n-tab-title { transition: background-color .2s, color .2s, border-color .2s; }

/* Buttons with a flat (non-gradient) background keep Figma's colours on hover. */
.elementor-widget-button.pn-btn-flat .elementor-button:hover { filter: brightness(.97); }
