/* CourierCloud responsive fixes (loaded after theme + Elementor styles). */

/* Bootstrap .row inside the dairy info-box widget has -12px gutters but no padded container,
   which pushed the page 2-5px wider than the viewport at every width below 1440px. */
.elementor-widget-go-info-box > .elementor-widget-container > .row {
	margin-left: 0;
	margin-right: 0;
}

/* Comparison table: the header row moved from the first <tbody> row into a real <thead>. */
.iksweb thead tr {
	background: #0261ed;
	color: #fff;
}
.iksweb thead th {
	padding: 10px 20px;
	font-weight: 600;
	text-align: left;
}
.iksweb tbody tr:first-child {
	background: #fff !important;
	color: inherit !important;
	font-weight: 400 !important;
}
.iksweb tbody tr:first-child td {
	color: #606060;
}
.iksweb tbody tr:first-child td:first-child {
	font-weight: 600;
}
.iksweb tbody tr:first-child td:last-child {
	font-weight: 600;
	color: #0261ed;
}

/* Privacy policy: readable legal typography (theme defaults gave 48px grey H2s and bullet-less lists). */
.page-id-5643 .elementor-widget-text-editor h2 {
	margin: 40px 0 12px;
	color: #191717;
	font-size: clamp(22px, 2.4vw, 30px);
	font-weight: 700;
	line-height: 1.25;
}
.page-id-5643 .elementor-widget-text-editor h3 {
	margin: 24px 0 8px;
	color: #191717;
	font-size: 19px;
	font-weight: 600;
}
.page-id-5643 .elementor-widget-text-editor p {
	margin: 0 0 12px;
}
.page-id-5643 .elementor-widget-text-editor ul {
	margin: 0 0 16px;
	padding-left: 22px;
	list-style: disc;
}
.page-id-5643 .elementor-widget-text-editor li {
	margin-bottom: 6px;
	list-style: disc;
}
.page-id-5643 .elementor-widget-text-editor li p {
	margin: 0;
}

/* Header nav has five items (two dropdowns + Pricing). Between the tablet breakpoint and 1280px
   the theme's 40px gaps and 18px text wrapped it onto a second row. */
@media (min-width: 992px) and (max-width: 1279px) {
	.main-navigation #main-nav > li {
		margin-right: 18px !important;
	}
	.main-navigation #main-nav > li > a {
		font-size: 16px !important;
	}
	.fd-header-1-main-row .main-navigation {
		flex-shrink: 1;
		min-width: 0;
	}
}
/* Below 1200px five items don't fit next to the logo and CTA: use the mobile (burger) menu. */
@media (min-width: 992px) and (max-width: 1199.98px) {
	.fd-header-1-main-row .main-navigation {
		display: none !important;
	}
	.fd-header-1-main-row .fd-mobile-menu-btn-1 {
		display: flex !important;
	}
}

/* /delivery-api: the support CTA box had a fixed height, so its button spilled into the footer. */
.elementor-5736 .elementor-element-3ab6468,
.elementor-5736 .elementor-element-ccf1b77 {
	height: auto !important;
	min-height: 0 !important;
}
.elementor-5736 .elementor-element-3ab6468 {
	padding-bottom: 60px !important;
}

/* "Learn more" links under delivery-model cards on the home page. */
.cc-more {
	color: #0261ed;
	font-weight: 600;
	white-space: nowrap;
}
.cc-more:hover {
	text-decoration: underline;
}

/* Free-trial form in the dark #order section. */
.cc-trial-form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 16px;
	padding: 28px;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 20px 50px rgba(2, 20, 70, 0.35);
}
.cc-trial-form p {
	margin: 0;
}
.cc-trial-form .cc-field--full,
.cc-trial-form .cc-note {
	grid-column: 1 / -1;
}
.cc-trial-form label {
	display: block;
	margin-bottom: 6px;
	color: #191717;
	font-size: 14px;
	font-weight: 600;
}
.cc-trial-form label span {
	color: #8a8a8a;
	font-weight: 400;
}
.cc-trial-form input[type="text"],
.cc-trial-form input[type="email"],
.cc-trial-form input[type="tel"],
.cc-trial-form select {
	width: 100%;
	height: 48px;
	padding: 0 14px;
	border: 1px solid #d9dee7;
	border-radius: 10px;
	background: #f7f9fc;
	color: #191717;
	font-size: 15px;
}
.cc-trial-form ::placeholder {
	color: #a0a7b4;
	opacity: 1;
}
.cc-trial-form input:focus,
.cc-trial-form select:focus {
	outline: 2px solid #0261ed;
	outline-offset: 0;
	border-color: #0261ed;
	background: #fff;
}
.cc-trial-form .cc-submit {
	width: 100%;
	height: 54px;
	border: 0;
	border-radius: 30px;
	background: #0261ed;
	color: #fff;
	font-size: 17px;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.2s;
}
.cc-trial-form .cc-submit:hover {
	background: #0148b5;
}
.cc-trial-form .cc-note {
	color: #6b7280;
	font-size: 13px;
	line-height: 1.5;
}
.cc-trial-form .cc-note a {
	color: #0261ed;
	text-decoration: underline;
}
.cc-trial-form .wpcf7-not-valid-tip {
	margin-top: 4px;
	font-size: 12px;
}
.wpcf7-form.cc-trial .wpcf7-response-output {
	margin: 12px 0 0;
	border-radius: 10px;
	background: #fff;
	color: #191717;
}
@media (max-width: 767px) {
	.cc-trial-form {
		grid-template-columns: 1fr;
		margin-right: 15px;
		padding: 20px;
	}
}

/* Card titles moved from H4/H5/H6 to H3 (SEO heading order). Keep the sizes they had as H5,
   otherwise the theme's H3 default (42px) would kick in. */
.elementor-widget-icon-box h3.elementor-icon-box-title {
	font-size: 20px;
	line-height: 1.3;
}
.elementor-widget-go-icon-box .title-text {
	margin: 0;
	font-size: 20px;
	line-height: 1.21;
}
.elementor-widget-go-info-box h3.title-text {
	margin: 0;
	font-size: 20px;
	line-height: 32px;
}
.elementor-widget-go-info-box h3.item-title {
	margin: 0 0 2px;
	font-size: 18px;
	line-height: 1.16;
}
.elementor-widget-go-info-box p.fd-feature-2-qoute {
	margin: 0;
	font-size: 16px;
	line-height: 1.16;
}
@media (max-width: 767px) {
	.elementor-widget-icon-box h3.elementor-icon-box-title {
		font-size: 18px;
	}
}

/* App slider: the theme sizes each phone by the image's natural width. The English screens are
   576px wide (sharp on retina), so pin the slot to the original 354px layout width. */
.elementor-widget-go-app-screen .fd-overview-6-screen-signle {
	width: 100%;
	max-width: 354px;
}
.elementor-widget-go-app-screen .fd-overview-6-screen-signle img {
	width: 100%;
	height: auto;
}

/* Contact block (home + /milkrun): the email replaced a phone number, keep it on one line. */
.elementor-element-d930628 .elementor-icon-list-text,
.elementor-element-51b7312 .elementor-icon-list-text {
	white-space: nowrap;
}

/* /milkrun "Daily input" grid: three fixed-width cards overflowed tablets (882px at 768px). */
@media (max-width: 1024px) {
	.elementor-element-d2465d9.e-grid {
		max-width: 100%;
		grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
	}
	.elementor-element-d2465d9.e-grid > .e-con {
		width: auto !important;
		max-width: none !important;
	}
}

@media (max-width: 767px) {
	.elementor-element-d930628 .elementor-icon-list-text,
	.elementor-element-51b7312 .elementor-icon-list-text {
		font-size: 20px !important;
	}

	/* Hero benefit tiles: two per row instead of six full-width cards. */
	.elementor-element-f38276b.e-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px !important;
	}
	.elementor-element-f38276b.e-grid > .elementor-widget {
		width: auto !important;
		max-width: none !important;
	}
	.elementor-element-f38276b.e-grid p {
		font-size: 14px;
		line-height: 1.4;
	}

	/* Comparison table: one card per criterion so the CourierCloud column is always visible. */
	.elementor-widget-text-editor:has(> .iksweb),
	.elementor-widget-text-editor:has(.iksweb) {
		overflow: visible !important;
		border-radius: 0 !important;
	}
	.iksweb,
	.iksweb tbody,
	.iksweb tr,
	.iksweb td {
		display: block;
		width: 100%;
	}
	.iksweb {
		font-size: 15px !important;
		border: 0;
	}
	.iksweb thead {
		display: none;
	}
	.iksweb tbody tr {
		margin-bottom: 12px;
		padding: 14px 16px;
		border-radius: 12px;
		background: #fff !important;
		box-shadow: 0 2px 10px rgba(2, 97, 237, 0.08);
	}
	.iksweb tbody tr td {
		display: flex;
		justify-content: space-between;
		gap: 16px;
		padding: 4px 0 !important;
		border: 0;
		text-align: right;
	}
	.iksweb tbody tr td:first-child {
		display: block;
		margin-bottom: 6px;
		color: #191717 !important;
		font-size: 17px;
		text-align: left;
	}
	.iksweb tbody tr td:not(:first-child)::before {
		flex: 0 0 auto;
		color: #8a8a8a;
		font-weight: 400;
		text-align: left;
	}
	.iksweb tbody tr td:nth-child(2)::before { content: "Manual (Excel)"; }
	.iksweb tbody tr td:nth-child(3)::before { content: "Other systems"; }
	.iksweb tbody tr td:nth-child(4)::before { content: "CourierCloud"; color: #0261ed; font-weight: 600; }

	/* App screenshots: a swipeable row instead of five full-height phones stacked (~4000px). */
	.elementor-widget-go-app-screen .fd-overview-6-screen {
		display: flex !important;
		flex-wrap: nowrap !important;
		gap: 12px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 8px;
		margin: 0 !important;
	}
	.elementor-widget-go-app-screen .fd-overview-6-screen-signle {
		flex: 0 0 72%;
		width: 72% !important;
		max-width: 280px;
		margin: 0 !important;
		scroll-snap-align: start;
		transform: none !important;
	}
	.elementor-widget-go-app-screen .fd-overview-6-screen-signle img {
		width: 100%;
		height: auto;
	}
}
