/*
 * DayBright brand styles for Kadence.
 *
 * Every rule is prefixed with body.db-site (added by the plugin) so it wins over theme
 * defaults without !important. In the block editor the prefix is swapped for
 * body.editor-styles-wrapper so pages look the same while editing.
 *
 * Structure: page sections are full-width Group blocks with class "db-section" plus a
 * modifier (db-hero, db-buying, db-callout …); each holds a Group with class "db-container".
 * Add these classes under Block → Advanced → Additional CSS class(es).
 */

:root {
	--db-green: #01312d;
	--db-header: #08443a;
	--db-yellow: #ffca05;
	--db-yellow-hover: #ffda45;
	--db-lime: #a5cd39;
	--db-prosperity: #225b36;
	--db-paper: #f3f6ee;
	--db-muted: #46615b;
}

/* ---------- Base ---------- */

body.db-site {
	color: var(--db-green);
	font-family: Helvetica, Arial, sans-serif;
}

body.db-site .db-section :where(h1, h2, h3, h4, p, figure, ul, details, .wp-block-group, .wp-block-columns, .wp-block-buttons, .wp-block-image) {
	margin-top: 0;
	margin-bottom: 0;
}

body.db-site .db-section :where(p) { margin-top: 16px; }
body.db-site .db-section :where(.wp-block-group, .wp-block-column, .wp-block-group__inner-container) > :where(p:first-child) { margin-top: 0; }

/* Classic themes such as Kadence wrap Group content in an extra div; let the group's own grid/flex reach its blocks. */
body.db-site .db-section .wp-block-group__inner-container { display: contents; }

body.db-site .db-section :where(h1, h2, h3) {
	font-family: inherit;
	font-weight: 900;
	line-height: 1.08;
	letter-spacing: -.045em;
	color: inherit;
}
body.db-site .db-section :where(h1) { font-size: clamp(46px, 5.5vw, 78px); }
body.db-site .db-section :where(h2) { font-size: clamp(30px, 3.4vw, 46px); }
body.db-site .db-section :where(h3) { font-size: 25px; letter-spacing: -.025em; }

body.db-site .db-section :where(a) { color: inherit; text-underline-offset: 4px; }
body.db-site .db-section :where(img) { max-width: 100%; height: auto; display: block; }
body.db-site .db-section mark { background: none; color: var(--db-yellow); }

body.db-site :where(a, button, summary):focus-visible { outline: 3px solid #d45300; outline-offset: 5px; }

body.db-site .db-section {
	margin-top: 0;
	margin-bottom: 0;
	padding: 76px 0;
}

body.db-site .db-container {
	width: min(1200px, calc(100% - 64px));
	max-width: none;
	margin-inline: auto;
}
body.db-site .db-container.db-narrow { max-width: 820px; }
body.db-site .db-container.db-legal { max-width: 840px; }

body.db-site .db-section .db-eyebrow {
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	margin: 0 0 14px;
}

/* ---------- Buttons ---------- */

body.db-site .db-section .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 14px; }
body.db-site .db-section .wp-block-button { margin: 0; }

body.db-site .db-section .wp-block-button__link {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
	background: var(--db-yellow);
	color: var(--db-green);
	font-size: 15px;
	font-weight: 700;
	padding: 15px 22px;
	min-height: 52px;
	border: 2px solid transparent;
	border-radius: 8px;
	text-decoration: none;
	line-height: 1.3;
	box-shadow: none;
	transition: background .15s, transform .15s;
}
body.db-site .db-section .wp-block-button__link:hover { background: var(--db-yellow-hover); color: var(--db-green); transform: translateY(-2px); }

body.db-site .db-section .is-style-outline .wp-block-button__link { background: transparent; color: var(--db-green); border-color: var(--db-green); }
body.db-site .db-section .is-style-outline .wp-block-button__link:hover { background: #01312d0c; }

/* Outline buttons on dark backgrounds */
body.db-site .db-hero .is-style-outline .wp-block-button__link { color: #fff; border-color: #d9e8e2; }
body.db-site .db-hero .is-style-outline .wp-block-button__link:hover { background: #ffffff12; color: #fff; }

/* ---------- Home hero ---------- */

body.db-site .db-hero {
	padding: 0;
	background: radial-gradient(ellipse at 75% 45%, #0b5445 0, transparent 51%), var(--db-green);
	color: #fff;
	overflow: hidden;
}
body.db-site .db-hero-grid {
	display: grid;
	grid-template-columns: 1.08fr 1fr;
	align-items: center;
	min-height: 590px;
	gap: 16px;
}
body.db-site .db-hero-copy { padding: 65px 0; }
body.db-site .db-hero .db-eyebrow { color: var(--db-lime); }
body.db-site .db-section .db-lead { font-size: 20px; max-width: 500px; line-height: 1.5; margin-top: 26px; }
body.db-site .db-hero .db-actions { margin-top: 30px; }
body.db-site .db-section .db-hero-qualification { font-size: 15px; color: #dce9df; line-height: 1.65; margin-top: 16px; }

body.db-site .db-hero-visual { position: relative; text-align: center; }
body.db-site .db-phone-stage {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	min-height: 410px;
	position: relative;
}
body.db-site .db-phone-stage::before {
	content: "";
	position: absolute;
	inset: 12% 5%;
	border-radius: 50%;
	background: #a5cd3912;
	border: 1px solid #ffffff14;
}
body.db-site .db-phone-stage .wp-block-image { position: relative; margin: 0; }
body.db-site .db-phone-stage .wp-block-image img {
	position: relative;
	width: 155%;
	max-width: none;
	height: 340px;
	object-fit: contain;
	margin-left: -22%;
	filter: drop-shadow(0 20px 12px #00171350);
}
body.db-site .db-phone-stage .wp-block-image + .wp-block-image img { transform: translateY(28px); }
body.db-site .db-section .db-hero-caption { font-weight: 700; font-size: 18px; margin-top: 0; }
body.db-site .db-section .db-hero-small { font-size: 10px; color: #bbd2c9; margin: 5px 0 0; padding-bottom: 20px; }

/* ---------- Benefit strip ---------- */

body.db-site .db-benefits { background: var(--db-lime); padding: 0; font-weight: 700; font-size: 15px; }
body.db-site .db-benefit-grid { display: grid; grid-template-columns: repeat(3, 1fr); text-align: center; padding-block: 18px; }
body.db-site .db-benefit-grid p { margin: 0; }
body.db-site .db-benefit-grid p + p { border-left: 1px solid #01312d55; }

/* ---------- Section heading ---------- */

body.db-site .db-section-heading {
	display: flex;
	justify-content: space-between;
	align-items: end;
	gap: 40px;
	margin-bottom: 36px;
}
body.db-site .db-section-heading h2 { max-width: 670px; }
body.db-site .db-section-heading > p,
body.db-site .db-section-heading > .wp-block-group__inner-container > p { max-width: 350px; color: var(--db-muted); margin: 0; font-size: 15px; }

/* ---------- Brand cards (home) ---------- */

body.db-site .db-brand-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
body.db-site .db-brand-card { background: var(--db-paper); padding: 24px; display: flex; flex-direction: column; border-radius: 14px; }
body.db-site .db-section .db-brand-name { font-size: 23px; font-weight: 900; letter-spacing: .01em; margin: 0; }
body.db-site .db-brand-card .wp-block-image { margin: 12px 0 20px; }
body.db-site .db-brand-card .wp-block-image img { width: 100%; height: 215px; object-fit: contain; mix-blend-mode: multiply; }
body.db-site .db-brand-card h3 { font-size: 23px; }
body.db-site .db-brand-card :where(p:not(.db-brand-name)) { color: var(--db-muted); font-size: 16px; margin-bottom: 28px; }
body.db-site .db-brand-card .wp-block-buttons { margin-top: auto; }
body.db-site .db-brand-card .wp-block-button { width: 100%; }
body.db-site .db-brand-card .wp-block-button__link { width: 100%; padding: 13px 14px; font-size: 14px; }

/* ---------- How it works (lime) ---------- */

body.db-site .db-buying { background: var(--db-lime); padding: 55px 0; }
body.db-site .db-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
body.db-site .db-steps > .wp-block-column + .wp-block-column { border-left: 1px solid #01312d55; padding-left: 32px; }
body.db-site .db-section .db-number {
	width: 52px;
	height: 52px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: var(--db-green);
	color: #fff;
	font-size: 26px;
	font-weight: 800;
	margin: 0 0 22px;
}
body.db-site .db-steps h3 { font-size: 23px; }
body.db-site .db-steps :where(p) { font-size: 16px; }
body.db-site .db-section .db-plan-note { border-top: 1px solid #01312d33; padding-top: 24px; margin-top: 32px; font-size: 14px; max-width: 940px; }

/* ---------- Support band (home) ---------- */

body.db-site .db-support-band {
	background: var(--db-green);
	color: #fff;
	border-radius: 16px;
	padding: 44px;
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 70px;
}
body.db-site .db-support-band :where(p) { color: #d7e4df; font-size: 16px; }
body.db-site .db-support-band .db-eyebrow { color: var(--db-lime); }
body.db-site .db-support-links { display: flex; flex-direction: column; justify-content: center; }
body.db-site .db-section .db-support-links > p { margin: 0; font-size: inherit; color: #fff; }
body.db-site .db-support-links a {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	text-decoration: none;
	font-weight: 700;
	padding: 17px 0;
	border-bottom: 1px solid #ffffff35;
}
body.db-site .db-support-links a:hover { color: var(--db-yellow); }

/* ---------- Callout (yellow) ---------- */

body.db-site .db-callout { background: var(--db-yellow); padding: 50px 0; }
body.db-site .db-callout-inner { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 70px; }
body.db-site .db-callout h2 { font-size: 40px; }
body.db-site .db-callout .wp-block-buttons { margin-top: 22px; gap: 6px 12px; }
body.db-site .db-callout .wp-block-button__link { background: var(--db-green); color: #fff; }
body.db-site .db-callout .wp-block-button__link:hover { background: var(--db-prosperity); color: #fff; }
body.db-site .db-callout .is-style-outline .wp-block-button__link { background: transparent; color: var(--db-green); }
body.db-site .db-callout .is-style-outline .wp-block-button__link:hover { background: #01312d12; color: var(--db-green); }

/* ---------- Inner page hero ---------- */

body.db-site .db-page-hero {
	padding: 64px 0;
	background: radial-gradient(ellipse at 95% 100%, #225b36, transparent 65%), var(--db-green);
	color: #fff;
}
body.db-site .db-page-hero .db-eyebrow { color: var(--db-lime); }
body.db-site .db-page-hero .db-lead { max-width: 650px; margin-top: 24px; }

/* ---------- Phones catalogue ---------- */

body.db-site .db-catalogue { padding-top: 35px; }
body.db-site .db-section .db-jump-links { display: flex; flex-wrap: wrap; gap: 10px 24px; margin: 26px 0 36px; }
body.db-site .db-catalogue .db-jump-links { margin-top: 0; margin-bottom: 24px; }
body.db-site .db-jump-links a { font-size: 14px; padding: 10px 0; text-decoration: underline; }
body.db-site .db-jump-links a:hover { color: var(--db-prosperity); }
body.db-site .db-section .db-catalogue-note { max-width: 900px; font-size: 14px; color: var(--db-muted); }

body.db-site .db-brand-section { padding-top: 60px; scroll-margin-top: 30px; }
body.db-site .db-brand-section .db-section-heading { margin-bottom: 25px; align-items: center; }
body.db-site .db-brand-section .db-section-heading .db-eyebrow { margin: 0; }

body.db-site .db-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
body.db-site .db-product-card {
	background: var(--db-paper);
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	border: 1px solid #01312d0c;
}
body.db-site .db-product-card .db-product-image { height: 280px; padding: 20px; background: #fff; margin: 0; }
body.db-site .db-product-card .db-product-image img { width: 100%; height: 100%; object-fit: contain; }
body.db-site .db-product-copy { padding: 28px; display: flex; flex-direction: column; flex: 1; }
body.db-site .db-product-copy h3 { font-size: 29px; }
body.db-site .db-product-copy .db-eyebrow { margin-bottom: 10px; }
body.db-site .db-product-copy :where(p) { font-size: 16px; }
body.db-site .db-section .db-payment-label { font-size: 13px; font-weight: 700; margin: 24px 0 20px; }
body.db-site .db-product-copy .wp-block-buttons { margin-top: auto; }

/* FAQ */
body.db-site .db-narrow h2:first-child { margin-bottom: 15px; }
body.db-site .db-section details { border-bottom: 1px solid #ced8cd; padding: 20px 0; }
body.db-site .db-section summary { cursor: pointer; font-weight: 700; min-height: 32px; font-size: 18px; }
body.db-site .db-section details :where(p) { padding: 4px 12px 12px 0; color: var(--db-muted); font-size: 16px; }

/* ---------- Support page ---------- */

body.db-site .db-helpdesk-panel {
	padding: 36px;
	background: var(--db-yellow);
	border-radius: 14px;
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 35px;
	align-items: center;
}
body.db-site .db-helpdesk-panel h2 { font-size: 32px; }
body.db-site .db-helpdesk-panel :where(p) { font-size: 16px; }
body.db-site .db-helpdesk-panel .wp-block-column > p { margin-top: 0; }
body.db-site .db-section .db-big-number { font-size: clamp(24px, 3vw, 36px); font-weight: 800; }
body.db-site .db-big-number a { text-decoration: none; }

body.db-site .db-support-layout { display: grid; grid-template-columns: 320px 1fr; gap: 65px; }
body.db-site .db-prepare { background: var(--db-paper); padding: 28px; border-radius: 12px; align-self: start; }
body.db-site .db-prepare h2 { font-size: 28px; }
body.db-site .db-prepare ul { padding-left: 20px; margin-top: 16px; }
body.db-site .db-prepare li { margin: 12px 0; font-size: 15px; }
body.db-site .db-section .db-prepare-note { font-size: 13px; border-top: 1px solid #cdd8c9; padding-top: 18px; }
body.db-site .db-support-topic { padding: 0 0 34px; margin-bottom: 34px; border-bottom: 1px solid #d4ddd2; scroll-margin-top: 30px; }
body.db-site .db-support-sections .db-support-topic { margin-bottom: 34px; }
body.db-site .db-support-topic h2 { font-size: 30px; }
body.db-site .db-support-topic :where(p) { font-size: 16px; }
body.db-site .db-support-topic a { font-weight: 700; }

/* ---------- Contact page ---------- */

body.db-site .db-section .db-enquiry-context { background: var(--db-yellow); padding: 18px 24px; border-radius: 8px; margin: 0 0 30px; }
body.db-site .db-section .db-enquiry-context[hidden] { display: none; }
body.db-site .db-contact-grid,
body.db-site .db-two-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; }
body.db-site .db-two-grid { margin-top: 28px; }
body.db-site .db-contact-card { padding: 36px; background: var(--db-paper); border-radius: 14px; }
body.db-site .db-contact-card h3 { font-size: 36px; }
body.db-site .db-contact-card :where(p:not(.db-contact-number)) { margin-bottom: 25px; }
body.db-site .db-section .db-contact-number { font-size: clamp(22px, 2.6vw, 32px); font-weight: 700; margin-top: 14px; letter-spacing: -.03em; }
body.db-site .db-contact-number a { text-decoration: none; }
body.db-site .db-contact-number a:hover { text-decoration: underline; }
body.db-site .db-text-card { padding: 32px; background: var(--db-paper); border-radius: 12px; }
body.db-site .db-text-card h2 { font-size: 28px; }
body.db-site .db-text-card :where(p) { font-size: 16px; color: var(--db-muted); }
body.db-site .db-section .db-email-link { font-size: 22px; font-weight: 700; margin-top: 16px; overflow-wrap: anywhere; color: var(--db-green); }
body.db-site .db-section .db-text-link { font-weight: 700; margin-top: 20px; color: var(--db-green); }
body.db-site .db-address { margin-top: 48px; border-top: 1px solid #d4ddd2; padding-top: 32px; }
body.db-site .db-address h2 { font-size: 25px; letter-spacing: -.02em; }
body.db-site .db-address :where(p) { font-size: 16px; }

/* ---------- Legal pages ---------- */

body.db-site .db-legal-section { margin: 36px 0; scroll-margin-top: 30px; }
body.db-site .db-legal-section h2 { font-size: 26px; letter-spacing: -.025em; line-height: 1.2; }
body.db-site .db-legal :where(p) { color: #284c44; }
body.db-site .db-section .db-updated { font-size: 13px; margin: 0 0 20px; }
body.db-site .db-notice { background: var(--db-paper); border-left: 5px solid var(--db-yellow); padding: 26px; font-size: 16px; }
body.db-site .db-notice :where(p) { margin-top: 8px; }
body.db-site .db-legal .db-jump-links { border-bottom: 1px solid #cdd8c9; padding-bottom: 20px; }

/* ---------- Kadence header & footer touches ---------- */

body.db-site .db-flag {
	width: 24px;
	height: 16px;
	display: inline-block;
	vertical-align: -3px;
	margin-right: 6px;
	background: linear-gradient(#75b6da 0 37%, #fff 37% 43%, #101919 43% 57%, #fff 57% 63%, #75b6da 63%);
}
body.db-site .site-top-header-wrap,
body.db-site .site-top-header-wrap a,
body.db-site .mobile-html { color: #e1e9e0; font-size: 12px; }
body.db-site .site-top-header-wrap { border-bottom: 1px solid #ffffff20; }
body.db-site .main-navigation .primary-menu-container > ul > li.menu-item > a { font-weight: 700; font-size: 14px; }
body.db-site .main-navigation .primary-menu-container > ul > li.current-menu-item > a { box-shadow: inset 0 -3px var(--db-yellow); }
body.db-site .header-button { font-weight: 700; font-size: 14px; border-radius: 8px; }

body.db-site .site-footer { color: #d4e3dc; font-size: 14px; }
body.db-site .site-footer a,
body.db-site .site-footer .footer-widget-area a { color: #d4e3dc; text-decoration: none; }
body.db-site .site-footer a:hover,
body.db-site .site-footer .footer-widget-area a:hover { color: var(--db-yellow); }
body.db-site .site-footer .db-footer-logo { max-width: 210px; margin: 0 0 16px; }
body.db-site .site-footer .db-footer-title { font-size: 17px; letter-spacing: 0; margin: 0 0 16px; color: #fff; font-weight: 900; }
body.db-site .site-footer .footer-widget-area p { margin: 10px 0; }
body.db-site .site-footer .db-eyebrow { font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
body.db-site .site-bottom-footer-wrap { border-top: 1px solid #ffffff25; font-size: 11px; }

/* Sticky call / support bar on phones */
.db-mobile-actions { display: none; }

/* ---------- Responsive ---------- */

@media (min-width: 1440px) {
	body.db-site .db-hero-grid { min-height: 625px; }
}

@media (max-width: 1050px) {
	body.db-site .db-container { width: calc(100% - 48px); }
	body.db-site .db-hero-grid { min-height: 520px; }
	body.db-site .db-hero h1 { font-size: 58px; }
	body.db-site .db-section .db-lead { font-size: 18px; }
	body.db-site .db-support-layout { grid-template-columns: 270px 1fr; gap: 35px; }
	body.db-site .db-callout-inner { gap: 30px; }
}

@media (max-width: 1000px) {
	body.db-site .db-brand-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.db-site .db-product-grid { gap: 16px; }
	body.db-site .db-product-copy { padding: 20px; }
	body.db-site .db-product-copy h3 { font-size: 25px; }
	body.db-site .db-product-card .db-product-image { height: 235px; }
	body.db-site .db-phone-stage .wp-block-image img { height: 290px; }
	body.db-site .db-phone-stage { min-height: 350px; }
}

@media (max-width: 760px) {
	body.db-site .db-container { width: calc(100% - 36px); }
	body.db-site .site-top-header-wrap .header-navigation { display: none; }

	body.db-site .db-hero-grid { grid-template-columns: 1fr; gap: 0; min-height: 0; }
	body.db-site .db-hero-copy { padding: 42px 0 10px; }
	body.db-site .db-hero h1 { font-size: clamp(44px, 9.7vw, 65px); }
	body.db-site .db-section .db-lead { font-size: 18px; margin-top: 22px; }
	body.db-site .db-hero .db-actions { gap: 10px; }
	body.db-site .db-hero .db-actions .wp-block-button__link { font-size: 14px; padding: 13px 17px; }
	body.db-site .db-hero-visual { max-width: 480px; width: 100%; margin: auto; }
	body.db-site .db-section .db-hero-caption { font-size: 15px; }
	body.db-site .db-section .db-hero-small { padding-bottom: 25px; }

	body.db-site .db-benefit-grid { gap: 12px; padding: 16px 0; font-size: 11px; line-height: 1.4; }
	body.db-site .db-benefit-grid p { padding: 0 5px; }

	body.db-site .db-section { padding: 48px 0; }
	body.db-site .db-section-heading { display: block; margin-bottom: 28px; }
	body.db-site .db-section-heading > p,
body.db-site .db-section-heading > .wp-block-group__inner-container > p { margin-top: 18px; max-width: 520px; }

	body.db-site .db-buying { padding: 42px 0; }
	body.db-site .db-steps { grid-template-columns: 1fr; gap: 26px; }
	body.db-site .db-steps > .wp-block-column { position: relative; padding-left: 70px; }
	body.db-site .db-steps > .wp-block-column + .wp-block-column { border-left: 0; border-top: 1px solid #01312d35; padding-top: 26px; padding-left: 70px; }
	body.db-site .db-steps .db-number { position: absolute; left: 0; top: 0; width: 48px; height: 48px; }
	body.db-site .db-steps > .wp-block-column + .wp-block-column .db-number { top: 26px; }
	body.db-site .db-steps h3 { font-size: 24px; }
	body.db-site .db-steps :where(p) { margin-top: 12px; }

	body.db-site .db-support-band { padding: 28px; grid-template-columns: 1fr; gap: 20px; }
	body.db-site .db-support-band h2 { font-size: 33px; }
	body.db-site .db-callout-inner { grid-template-columns: 1fr; gap: 22px; }
	body.db-site .db-callout { padding: 38px 0; }
	body.db-site .db-callout h2 { font-size: 36px; }
	body.db-site .db-callout .wp-block-button__link { padding: 13px 16px; font-size: 14px; }

	body.db-site .db-page-hero { padding: 42px 0; }
	body.db-site .db-page-hero h1 { font-size: 48px; }
	body.db-site .db-contact-grid,
	body.db-site .db-two-grid { grid-template-columns: 1fr; }
	body.db-site .db-text-card { padding: 26px; }
	body.db-site .db-contact-card { padding: 28px; }
	body.db-site .db-helpdesk-panel { grid-template-columns: 1fr; padding: 26px; gap: 20px; }
	body.db-site .db-helpdesk-panel h2 { font-size: 29px; }
	body.db-site .db-support-layout { grid-template-columns: 1fr; gap: 38px; }
	body.db-site .db-support-topic h2 { font-size: 29px; }
	body.db-site .db-section .db-jump-links { gap: 4px 18px; }
	body.db-site .db-legal-section h2 { font-size: 25px; }
	body.db-site .db-legal :where(p) { font-size: 16px; }
	body.db-site .db-notice { padding: 22px; }
	body.db-site .db-section .db-big-number { font-size: 30px; }

	body.db-site { padding-bottom: 70px; }
	.db-mobile-actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 20;
		gap: 8px;
		padding: 10px 12px max(10px, env(safe-area-inset-bottom));
		background: #fff;
		box-shadow: 0 -3px 16px #01312d14;
	}
	.db-mobile-actions a {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 6px;
		min-height: 46px;
		font-weight: 700;
		font-size: 12px;
		text-decoration: none;
		color: var(--db-green);
		border: 1px solid var(--db-green);
		border-radius: 6px;
	}
	.db-mobile-actions a:first-child { background: var(--db-yellow); border-color: var(--db-yellow); }
	.db-mobile-actions svg { width: 18px; height: 22px; flex-shrink: 0; }
}

@media (max-width: 700px) {
	body.db-site .db-product-grid { grid-template-columns: 1fr; }
	body.db-site .db-product-card .db-product-image { height: 270px; }
	body.db-site .db-product-copy { padding: 25px; }
	body.db-site .db-brand-section { padding-top: 45px; }
	body.db-site .db-brand-section .db-section-heading { display: block; }
	body.db-site .db-brand-section .db-section-heading .db-eyebrow { margin-top: 12px; }
	body.db-site .db-phone-stage .wp-block-image img { height: 270px; }
	body.db-site .db-phone-stage { min-height: 315px; }
	body.db-site .db-brand-grid { gap: 12px; }
	body.db-site .db-brand-card { padding: 16px; }
	body.db-site .db-brand-card .wp-block-image img { height: 165px; }
	body.db-site .db-brand-card h3 { font-size: 21px; }
	body.db-site .db-brand-card .wp-block-button__link { font-size: 13px; padding: 12px 10px; gap: 7px; }
	body.db-site .db-brand-card :where(p:not(.db-brand-name)) { font-size: 14px; }
	body.db-site .db-section .db-brand-name { font-size: 19px; }
}

@media (max-width: 380px) {
	body.db-site .db-hero h1 { font-size: 41px; }
	body.db-site .db-hero .wp-block-button__link { padding: 12px; font-size: 13px; }
	body.db-site .db-page-hero h1 { font-size: 42px; }
}

@media (prefers-reduced-motion: reduce) {
	body.db-site .db-section .wp-block-button__link { transition: none; }
	body.db-site .db-section .wp-block-button__link:hover { transform: none; }
}

@media print {
	.db-mobile-actions { display: none; }
	body.db-site .db-page-hero { background: #fff; color: #111; padding: 20px 0; }
	body.db-site .db-section mark { color: #111; }
}
