/* Price lists (tables with class ds-price-table) */
.ds-price-table table { border-collapse: collapse; border: 1px solid #d0d0d0; font-size: 17px; }
.ds-price-table th, .ds-price-table td { border: 0; border-right: 1px solid #d6d6d6; border-bottom: 1px solid #ffffff; padding: 12px 10px; text-align: left; }
.ds-price-table th:last-child, .ds-price-table td:last-child { border-right: 0; }
.ds-price-table thead { border-bottom: 0; }
.ds-price-table thead th { background: #4a4a4a; color: #ffffff; font-weight: 700; text-transform: uppercase; border-right-color: #6a6a6a; }
.ds-price-table tbody tr, .ds-price-table.is-style-stripes tbody tr:nth-child(odd) { background: #e8e8e8; }
.ds-price-table tbody tr:nth-child(even), .ds-price-table.is-style-stripes tbody tr:nth-child(even) { background: #f2f2f2; }
.ds-price-table tbody td { color: #555555; }
@media (max-width: 600px) { .ds-price-table table { font-size: 14px; } .ds-price-table th, .ds-price-table td { padding: 8px 6px; } }

.ds-price-table tbody tr { transition: background-color 0.15s ease; }
.ds-price-table tbody tr:hover, .ds-price-table.is-style-stripes tbody tr:hover { background: #c8c8c8; }
.ds-price-table tbody tr:hover td { color: #222222; }

/* Inter typography */
.entry-content p, .entry-content li { line-height: 1.6; }
.ds-price-table table { font-variant-numeric: tabular-nums; }
.ds-price-table, .ds-price-table.is-style-stripes { border-bottom: 0; }
/* keep price lists as real table rows on phones (overrides the older 4-column grid rule) */
@media (max-width: 600px) { .ds-price-table thead tr, .ds-price-table tbody tr { display: table-row; } }
.ds-price-table table { margin-bottom: 0; }

/* Section spacing */
.entry-content > .wp-block-separator { margin-top: 40px; margin-bottom: 40px; }
.entry-content > h1.wp-block-heading { margin-bottom: 48px; }
.entry-content > h2.wp-block-heading { margin-top: 48px; margin-bottom: 16px; }
.entry-content > .wp-block-separator + h2.wp-block-heading { margin-top: 0; }
.entry-content p { margin-bottom: 1em; }
.entry-content > .wp-block-columns { padding: 0; column-gap: 40px; margin-bottom: 24px; }
.entry-content > .wp-block-columns h2 { margin-bottom: 16px; }
.entry-content > .wp-block-columns p { margin-top: 0; }
.entry-content > .wp-block-table { margin-top: 24px; margin-bottom: 32px; }
.entry-content > .wp-block-image { margin-top: 32px; margin-bottom: 32px; }
@media (max-width: 781px) {
	.entry-content > .wp-block-separator { margin-top: 32px; margin-bottom: 32px; }
	.entry-content > h2.wp-block-heading { margin-top: 40px; }
	.entry-content > .wp-block-columns { row-gap: 24px; }
	.entry-content > .wp-block-image { margin-top: 24px; margin-bottom: 24px; }
}

/* Image captions */
.entry-content .wp-block-image figcaption { text-align: right; font-size: 12px; margin-top: 6px; }

/* Section menu */
html { scroll-behavior: smooth; }
.entry-content h2[id] { scroll-margin-top: 32px; }
.entry-content > h1.wp-block-heading:has(+ .ds-section-menu) { margin-bottom: 16px; }
.entry-content > .ds-section-menu { display: flex; flex-wrap: wrap; gap: 8px 0; margin-bottom: 48px; font-size: 15px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
.entry-content .ds-section-menu a { color: #D1B47A; text-decoration: none; padding: 0 18px; border-left: 1px solid #DF9B2F; transition: color 0.15s ease; }
.entry-content .ds-section-menu a:first-child { padding-left: 0; border-left: 0; }
.entry-content .ds-section-menu a:hover, .entry-content .ds-section-menu a:focus { color: #DF9B2F; text-decoration: none; }
@media (max-width: 600px) {
	.entry-content > .ds-section-menu { font-size: 12px; letter-spacing: 0.04em; gap: 8px 20px; }
	.entry-content .ds-section-menu a, .entry-content .ds-section-menu a:first-child { padding: 0; border-left: 0; }
}

/* Intro section (first columns under the menu) */
.entry-content > .ds-section-menu { margin-bottom: 32px; }
.entry-content > .ds-section-menu + .wp-block-columns { margin-bottom: 0; }

/* Tagline caps */
.entry-content > .ds-section-menu + .wp-block-columns h2 { color: #E0453A !important; font-style: normal !important; font-weight: 400 !important; text-transform: uppercase; font-size: 26px; line-height: 1.3; letter-spacing: 0.06em; }
.entry-content > .ds-section-menu + .wp-block-columns h2 em { font-style: normal; font-weight: 600; }
@media (max-width: 600px) { .entry-content > .ds-section-menu + .wp-block-columns h2 { font-size: 22px; } }

/* Blue links: email lines and recent clients */
.entry-content .wp-block-columns a[href^="mailto:"], .entry-content .ds-clients a { color: #4DA3FF; }
.entry-content .wp-block-columns a[href^="mailto:"]:hover, .entry-content .wp-block-columns a[href^="mailto:"]:focus, .entry-content .ds-clients a:hover, .entry-content .ds-clients a:focus { color: #80BDFF; }

/* Contact form */
.entry-content .wp-block-jetpack-contact-form { max-width: 640px; gap: 16px; }
.entry-content .wp-block-jetpack-contact-form label { color: #CBD5E1 !important; font-size: 15px; font-weight: 600; }
.entry-content .wp-block-jetpack-contact-form input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
.entry-content .wp-block-jetpack-contact-form textarea {
	font-size: 16px !important; /* 16px stops iPhones zooming in on tap */
	color: #F1F5F9 !important; background: #1B2436 !important;
	border: 1px solid #4A5568 !important; border-radius: 4px !important;
	padding: 12px 14px !important; width: 100%; box-sizing: border-box;
}
.entry-content .wp-block-jetpack-contact-form textarea { height: 160px !important; min-height: 160px !important; resize: vertical; }
.entry-content .wp-block-jetpack-contact-form input:focus,
.entry-content .wp-block-jetpack-contact-form textarea:focus { border-color: #D1B47A !important; outline: 2px solid rgba(209,180,122,0.35) !important; outline-offset: 0; }
.entry-content .wp-block-jetpack-contact-form .wp-block-button__link,
.entry-content .wp-block-jetpack-contact-form button[type=submit] {
	background: #D1B47A !important; color: #0F172A !important; border: 0 !important; border-radius: 4px !important;
	font-size: 16px !important; font-weight: 600 !important; letter-spacing: 0.06em; text-transform: uppercase;
	padding: 14px 28px !important; min-height: 48px; cursor: pointer;
}
.entry-content .wp-block-jetpack-contact-form .wp-block-button__link:hover,
.entry-content .wp-block-jetpack-contact-form button[type=submit]:hover { background: #DF9B2F !important; }
@media (max-width: 600px) {
	.entry-content .wp-block-jetpack-contact-form .wp-block-button,
	.entry-content .wp-block-jetpack-contact-form .wp-block-button__link,
	.entry-content .wp-block-jetpack-contact-form button[type=submit] { width: 100% !important; }
}

/* Back button */ /* thank-you page */
.entry-content .ds-back-button .wp-block-button__link { background: #D1B47A; color: #0F172A; border-radius: 4px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; font-size: 15px; padding: 14px 28px; text-decoration: none; }
.entry-content .ds-back-button .wp-block-button__link:hover { background: #DF9B2F; color: #0F172A; }
