/*
Theme Name: Dentiquip Rentals
Description: Storefront child theme for Dentiquip Rentals: the design tokens
             (docs/design-system.md) and the site-wide styling of the 2026
             redesign: airy, Apple-like, in Dentiquip blue-teal.
Author: Dentiquip Rentals
Template: storefront
Version: 1.0.0
Text Domain: dentiquip-child
*/

/* -------------------------------------------------------------------
   Design tokens: the one source of every colour and size. Other code
   reads var(--dq-name), never copies a value (docs/design-system.md).
   ------------------------------------------------------------------- */
:root {
	--dq-brand: #1f5f7a;
	--dq-brand-hover: #164556;
	--dq-brand-soft: #e8f1f4;
	--dq-ink: #1c2a33;
	--dq-ink-2: #5f6f78;
	--dq-line: #e4eaed;
	--dq-field-line: #c9d3d8;
	--dq-section: #f4f7f8;
	--dq-surface: #ffffff;
	--dq-error: #b42318;
	--dq-error-bg: #fef3f2;
	--dq-error-line: #fecdca;
	--dq-success: #067647;
	--dq-success-bg: #ecfdf3;
	--dq-success-line: #abefc6;
	--dq-beta: #7a5200;
	--dq-beta-bg: #fff7e0;
	--dq-beta-line: #e9c46a;

	--dq-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
	--dq-text-display: 64px;
	--dq-text-h1: 48px;
	--dq-text-h2: 44px;
	--dq-text-h3: 24px;
	--dq-text-lg: 21px;
	--dq-text-body: 17px;
	--dq-text-sm: 15px;
	--dq-text-xs: 13px;

	--dq-space-1: 4px;
	--dq-space-2: 8px;
	--dq-space-3: 12px;
	--dq-space-4: 16px;
	--dq-space-5: 20px;
	--dq-space-6: 24px;
	--dq-space-7: 32px;
	--dq-space-8: 40px;
	--dq-space-9: 48px;
	--dq-space-10: 64px;
	--dq-space-11: 88px;
	--dq-space-12: 96px;

	--dq-radius-sm: 12px;
	--dq-radius-md: 16px;
	--dq-radius-lg: 22px;
	--dq-radius-xl: 28px;
	--dq-radius-pill: 999px;

	--dq-shadow-card: 0 1px 2px rgba(28,42,51,.04), 0 8px 24px rgba(28,42,51,.06);
	--dq-shadow-raised: 0 1px 2px rgba(28,42,51,.04), 0 8px 24px rgba(28,42,51,.08);
	--dq-focus: 0 0 0 3px rgba(31,95,122,.35);

	--dq-col: 1064px;
	--dq-header-h: 52px;

	/* The theme's old names, kept for one release */
	--dentiquip-primary: var(--dq-brand);
	--dentiquip-primary-dark: var(--dq-brand-hover);
	--dentiquip-accent: var(--dq-brand);
	--dentiquip-ink: var(--dq-ink);
}

/* Phones: the smaller type sizes. */
@media (max-width: 759.98px) {
	:root {
		--dq-text-display: 40px;
		--dq-text-h1: 36px;
		--dq-text-h2: 32px;
		--dq-text-h3: 22px;
		--dq-text-lg: 18px;
	}
}

/* -------------------------------------------------------------------
   Base: type, links, buttons, focus
   ------------------------------------------------------------------- */
html {
	scroll-padding-top: var(--dq-header-h);
}

body,
button,
input,
select,
optgroup,
textarea {
	font-family: var(--dq-font);
}

body {
	font-size: var(--dq-text-body);
	line-height: 1.5;
	color: var(--dq-ink);
	background-color: var(--dq-surface);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6,
.alpha, .beta, .gamma, .delta {
	color: var(--dq-ink);
	font-weight: 600;
	line-height: 1.1;
}

h1, h2, .alpha, .beta {
	letter-spacing: -0.025em;
}

/* Storefront sizes its column in em, so 17px text would widen it to
   1130px; keep it at 1064px (Promo's side banners are placed from it). */
@media (min-width: 768px) {
	.col-full {
		max-width: var(--dq-col);
	}
}

/* Storefront hides sideways overflow on .site, which makes .site the
   sticky container: the header and the side banners would not stick.
   clip cuts the same overflow without that. */
.site {
	overflow-x: clip;
}

a {
	color: var(--dq-brand);
}

a:hover,
a:focus {
	color: var(--dq-brand-hover);
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.wp-block-button__link,
.wc-block-components-button:not(.is-link),
.added_to_cart,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background-color: var(--dq-brand);
	border: 0;
	border-radius: var(--dq-radius-pill);
	color: #fff;
	font-family: var(--dq-font);
	font-weight: 500;
	text-shadow: none;
	box-shadow: none;
}

.button,
.wp-block-button__link,
.wc-block-components-button:not(.is-link),
input[type="submit"],
.added_to_cart,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--dq-space-2);
	min-height: 44px;
	padding: 0 1.4em;
	font-size: 16px;
	line-height: 1.2;
	text-decoration: none;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.button:hover,
.wp-block-button__link:hover,
.wc-block-components-button:not(.is-link):hover,
.added_to_cart:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background-color: var(--dq-brand-hover);
	color: #fff;
}

/* Storefront's colour settings paint .button.alt and friends #333 with two classes. */
button.alt,
input[type="button"].alt,
input[type="reset"].alt,
input[type="submit"].alt,
.button.alt,
.widget-area .widget a.button.alt {
	background-color: var(--dq-brand);
	color: #fff;
	border-radius: var(--dq-radius-pill);
}

button.alt:hover,
input[type="submit"].alt:hover,
.button.alt:hover,
.widget-area .widget a.button.alt:hover {
	background-color: var(--dq-brand-hover);
	color: #fff;
}

/* Page titles (info pages, Help, the shop's own pages). */
.hentry .entry-header .entry-title,
.page .entry-header .entry-title {
	font-size: var(--dq-text-h1);
	font-weight: 600;
	letter-spacing: -0.025em;
	line-height: 1.1;
	color: var(--dq-ink);
}

/* Block buttons: Storefront squares them (.hentry .entry-content .wp-block-button
   .wp-block-button__link) and greys them (.wp-block-button__link:not(.has-background)). */
body .wp-block-button__link:not(.has-background),
.hentry .entry-content .wp-block-button .wp-block-button__link:not(.has-background) {
	background-color: var(--dq-brand);
	color: #fff;
	border-radius: var(--dq-radius-pill);
}

body .wp-block-button__link:not(.has-background):hover,
.hentry .entry-content .wp-block-button .wp-block-button__link:not(.has-background):hover {
	background-color: var(--dq-brand-hover);
	color: #fff;
}

body .is-style-outline .wp-block-button__link:not(.has-background),
.hentry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background) {
	background-color: #fff;
	color: var(--dq-brand);
	box-shadow: inset 0 0 0 1.5px var(--dq-brand);
	border: 0;
}

body .is-style-outline .wp-block-button__link:not(.has-background):hover,
.hentry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background):hover {
	background-color: var(--dq-brand-soft);
	color: var(--dq-brand-hover);
}

/* The search block (the sidebar): a pill field and a brand button. */
body .wp-block-search .wp-block-search__button {
	min-height: 48px;
	padding: 0 1.2em;
	border: 0;
	border-radius: var(--dq-radius-pill);
	background-color: var(--dq-brand);
	color: #fff;
	font-weight: 500;
}

body .wp-block-search .wp-block-search__button:hover {
	background-color: var(--dq-brand-hover);
}

body .wp-block-search .wp-block-search__input {
	min-height: 48px;
	border-radius: var(--dq-radius-pill);
}

/* Secondary: white with a brand ring (the block editor's Outline style). */
.is-style-outline .wp-block-button__link,
.button.dq-secondary {
	background-color: #fff;
	color: var(--dq-brand);
	box-shadow: inset 0 0 0 1.5px var(--dq-brand);
}

.is-style-outline .wp-block-button__link:hover,
.button.dq-secondary:hover {
	background-color: var(--dq-brand-soft);
	color: var(--dq-brand-hover);
}

/* Disabled: still readable (white on #5f6f78 is 5.2:1). */
button:disabled,
.button:disabled,
.button.disabled,
input[type="submit"]:disabled {
	background-color: var(--dq-ink-2);
	color: #fff;
	cursor: not-allowed;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
.button:focus-visible {
	outline: 2px solid var(--dq-brand);
	outline-offset: 2px;
	box-shadow: var(--dq-focus);
}

/* Storefront rings every :focus in WooCommerce purple, a mouse click included; the keyboard gets the ring above. */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
input:focus:not(:focus-visible),
textarea:focus:not(:focus-visible) {
	outline: 0;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		transition: none !important;
		animation: none !important;
		scroll-behavior: auto !important;
	}
}

/* -------------------------------------------------------------------
   Forms and notices
   ------------------------------------------------------------------- */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="url"],
input[type="date"],
select,
textarea {
	box-sizing: border-box;
	min-height: 48px;
	padding: 0 14px;
	border: 1px solid var(--dq-field-line);
	border-radius: var(--dq-radius-sm);
	background-color: #fff;
	color: var(--dq-ink);
	font-family: var(--dq-font);
	font-size: 16px;
	line-height: 1.4;
	box-shadow: none;
}

textarea {
	min-height: 120px;
	padding: 12px 14px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="url"]:focus,
input[type="date"]:focus,
select:focus,
textarea:focus {
	border-color: var(--dq-brand);
	background-color: #fff;
	box-shadow: var(--dq-focus);
	outline: none;
}

/* WooCommerce's block fields (checkout) float their labels inside the
   field, so only border, corners and text size change, never padding. */
body .wc-block-components-form .wc-block-components-text-input input[type],
body .wc-block-components-text-input input[type],
body .wc-block-components-combobox .wc-block-components-combobox-control input,
body .wc-blocks-components-select .wc-blocks-components-select__select,
body .wc-block-components-textarea {
	border: 1px solid var(--dq-field-line);
	border-radius: var(--dq-radius-sm);
	font-size: 16px;
}

[aria-invalid="true"],
.woocommerce-invalid input.input-text,
body .wc-block-components-text-input.has-error input[type],
body .wc-block-components-combobox.has-error input {
	border-color: var(--dq-error) !important;
	box-shadow: 0 0 0 3px var(--dq-error-bg);
}

/* Required markers: WooCommerce's #e2401c is 4.2:1 on white. */
.required,
abbr.required,
.woocommerce form .form-row .required,
.wc-block-components-validation-error,
.wc-block-components-validation-error p {
	color: var(--dq-error);
}

/* WooCommerce notices: a rounded panel, the colour by kind. */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info,
.woocommerce-noreviews,
p.no-comments {
	margin: 0 0 var(--dq-space-6);
	padding: 14px 18px 14px 3.2em;
	border: 1px solid;
	border-left-width: 1px;
	border-radius: var(--dq-radius-md);
	font-size: var(--dq-text-sm);
	line-height: 1.5;
	list-style: none;
}

.woocommerce-error {
	background-color: var(--dq-error-bg);
	border-color: var(--dq-error-line);
	color: var(--dq-error);
}

.woocommerce-message {
	background-color: var(--dq-success-bg);
	border-color: var(--dq-success-line);
	color: var(--dq-success);
}

.woocommerce-info,
.woocommerce-noreviews,
p.no-comments {
	background-color: var(--dq-brand-soft);
	border-color: var(--dq-brand-soft);
	color: var(--dq-brand-hover);
}

.woocommerce-error li {
	margin: 0;
	padding: 2px 0;
}

.woocommerce-error::before {
	color: var(--dq-error);
}

.woocommerce-message::before {
	color: var(--dq-success);
}

.woocommerce-info::before {
	color: var(--dq-brand);
}

.woocommerce-error a,
.woocommerce-message a:not(.button),
.woocommerce-info a:not(.button) {
	color: inherit;
	text-decoration: underline;
}

.wc-block-components-notice-banner {
	border-radius: var(--dq-radius-md);
	padding: 14px 18px;
	font-size: var(--dq-text-sm);
}

.wc-block-components-notice-banner.is-error {
	background-color: var(--dq-error-bg);
	border-color: var(--dq-error-line);
	color: var(--dq-error);
}

.wc-block-components-notice-banner.is-success {
	background-color: var(--dq-success-bg);
	border-color: var(--dq-success-line);
	color: var(--dq-success);
}

.wc-block-components-notice-banner.is-info {
	background-color: var(--dq-brand-soft);
	border-color: var(--dq-brand-soft);
	color: var(--dq-brand-hover);
}

.wc-block-components-notice-banner.is-warning {
	background-color: var(--dq-beta-bg);
	border-color: var(--dq-beta-line);
	color: var(--dq-beta);
}

/* The approval gate's notice, in place of prices and Add to cart: a calm
   brand panel, not an error. */
.dentiquip-gate-notice {
	display: block;
	padding: 14px 18px;
	margin: 0 0 1em;
	border: 0;
	border-radius: var(--dq-radius-md);
	background: var(--dq-brand-soft);
	color: var(--dq-brand-hover);
	font-size: var(--dq-text-sm);
	line-height: 1.5;
}

.dentiquip-gate-notice a {
	font-weight: 600;
	color: var(--dq-brand-hover);
}

/* The front page supplies its own H1, so hide Storefront's page title
   there to avoid showing "Home" above it. */
.home.page .entry-header .entry-title {
	display: none;
}

/* Contact form ------------------------------------------------------- */

.dentiquip-contact-form label {
	display: block;
	font-weight: 600;
	font-size: var(--dq-text-sm);
	margin-bottom: 6px;
}

.dentiquip-contact-form input[type="text"],
.dentiquip-contact-form input[type="email"],
.dentiquip-contact-form input[type="tel"],
.dentiquip-contact-form textarea {
	width: 100%;
	max-width: 34em;
}

.dentiquip-contact-form .required {
	color: var(--dq-error);
}

.dentiquip-form-error {
	padding: 14px 18px;
	margin: 0 0 1em;
	border: 1px solid var(--dq-error-line);
	border-radius: var(--dq-radius-md);
	background: var(--dq-error-bg);
	color: var(--dq-error);
}

/* Honeypot. Hidden from people, still filled in by bots. Deliberately
   not display:none, which some bots detect and skip. */
.dentiquip-hp {
	position: absolute !important;
	left: -9999px !important;
	height: 0;
	overflow: hidden;
}

.dentiquip-contact-details {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}

.dentiquip-contact-details li {
	margin-bottom: 0.35em;
}

/* -------------------------------------------------------------------
   Footer: a grey band, four columns from the Footer menu (two on a
   phone), or Storefront's footer widget until that menu exists.
   ------------------------------------------------------------------- */
.site-footer {
	background-color: var(--dq-section);
	border-top: 1px solid var(--dq-line);
	padding: var(--dq-space-10) 0 var(--dq-space-7);
	color: var(--dq-ink-2);
	font-size: 14px;
}

.dq-footer-cols {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--dq-space-6);
}

.dq-footer-heading,
.site-footer .footer-widgets .widget-title,
.site-footer .footer-widgets .widgettitle {
	margin: 0 0 var(--dq-space-3);
	padding: 0;
	border: 0;
	font-size: var(--dq-text-xs);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.4;
	color: var(--dq-ink);
}

.dq-footer-col ul,
.site-footer .footer-widgets ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.dq-footer-col li,
.site-footer .footer-widgets li {
	margin: 0 0 var(--dq-space-2);
	padding: 0;
}

/* Storefront's footer link colour is set with .site-footer a:not(.button):not(.components-button). */
.site-footer .dq-footer-col a:not(.button):not(.components-button),
.site-footer .footer-widgets a:not(.button):not(.components-button) {
	color: var(--dq-ink-2);
	text-decoration: none;
}

.site-footer .dq-footer-col a:not(.button):not(.components-button):hover,
.site-footer .footer-widgets a:not(.button):not(.components-button):hover {
	color: var(--dq-ink);
	text-decoration: underline;
}

.dq-site-info {
	margin-top: var(--dq-space-8);
	padding-top: var(--dq-space-5);
	border-top: 1px solid var(--dq-line);
	font-size: var(--dq-text-xs);
	color: var(--dq-ink-2);
}

@media (max-width: 767px) {
	.dq-footer-cols {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.site-footer .dq-footer-col a:not(.button):not(.components-button),
	.site-footer .footer-widgets a:not(.button):not(.components-button) {
		display: inline-flex;
		align-items: center;
		min-height: 36px;
	}
}

/* -------------------------------------------------------------------
   WooCommerce pages: shop, product, cart, checkout, My Account
   ------------------------------------------------------------------- */
ul.products li.product img,
ul.products li.product .woocommerce-placeholder {
	border-radius: var(--dq-radius-lg);
	background-color: var(--dq-section);
}

ul.products li.product .woocommerce-loop-product__title {
	font-size: var(--dq-text-body);
	font-weight: 600;
	color: var(--dq-ink);
}

ul.products li.product .price {
	color: var(--dq-ink);
	font-weight: 400;
}

/* Phones: two products to a row. */
@media (max-width: 767px) {
	.site-main ul.products,
	ul.products {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--dq-space-6) var(--dq-space-4);
	}

	ul.products::before,
	ul.products::after {
		display: none;
	}

	.site-main ul.products li.product,
	ul.products li.product,
	.error404 .fourohfour-columns-2 .col-1 ul.products li.product {
		width: auto;
		float: none;
		margin: 0;
	}
}

.single-product div.product .product_title {
	font-size: var(--dq-text-h1);
	font-weight: 600;
	letter-spacing: -0.025em;
	line-height: 1.1;
}

.single-product div.product .woocommerce-product-gallery img {
	border-radius: var(--dq-radius-xl);
	background-color: var(--dq-section);
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img {
	border-radius: var(--dq-radius-sm);
}

.single-product div.product p.price,
.single-product div.product span.price {
	font-size: var(--dq-text-lg);
	color: var(--dq-ink);
}

.single-product div.product form.cart .quantity .qty {
	min-height: 48px;
	width: 5em;
	border-radius: var(--dq-radius-pill);
	text-align: center;
	padding: 0 8px;
}

.single-product div.product form.cart .single_add_to_cart_button {
	min-height: 48px;
	padding: 0 2em;
}

/* Description and Reviews as plain sections, not tabs. */
.woocommerce-tabs ul.tabs {
	display: none;
}

.woocommerce-tabs .panel {
	display: block !important;
	width: 100%;
	float: none;
	margin: 0 0 var(--dq-space-8);
	padding-top: var(--dq-space-6);
	border-top: 1px solid var(--dq-line);
}

.woocommerce-tabs .panel h2:first-child,
.related.products > h2,
.upsells.products > h2 {
	font-size: var(--dq-text-h3);
	font-weight: 600;
	letter-spacing: -0.01em;
}

/* Cart and checkout (WooCommerce blocks) */
.wc-block-cart__sidebar,
.wc-block-checkout__sidebar {
	background-color: var(--dq-section);
	border-radius: var(--dq-radius-lg);
	padding: var(--dq-space-6);
}

.wc-block-checkout__sidebar .wc-block-components-totals-wrapper,
.wc-block-cart__sidebar .wc-block-components-totals-wrapper {
	border-color: var(--dq-line);
}

.wc-block-components-checkout-step__title,
.wc-block-cart__totals-title {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: -0.01em;
	color: var(--dq-ink);
}

body .wc-block-components-checkout-place-order-button,
body .wc-block-cart__submit-button {
	width: 100%;
	min-height: 52px;
	border-radius: var(--dq-radius-pill);
	font-size: 17px;
}

.wc-block-components-radio-control__option,
.wc-block-components-radio-control-accordion-option {
	border-radius: var(--dq-radius-md);
}

@media (max-width: 767px) {
	.wc-block-checkout.wc-block-components-sidebar-layout {
		display: flex;
		flex-direction: column;
	}

	.wc-block-checkout__sidebar {
		order: -1;
	}
}

/* My Account: the tabs as a list on the left, the current one tinted;
   a wrapping row on a phone. */
.woocommerce-MyAccount-navigation ul {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}

/* Cart, checkout and My Account have no sidebar (functions.php). */
body.dq-no-sidebar .content-area {
	width: 100%;
	float: none;
	margin-right: 0;
}

/* Storefront draws dividers with .hentry .entry-content … ul li, in a sheet loaded after this one. */
.woocommerce-account .hentry .entry-content .woocommerce-MyAccount-navigation ul,
.woocommerce-account .hentry .entry-content .woocommerce-MyAccount-navigation ul li {
	margin: 0;
	padding: 0;
	border: 0;
}

@media (min-width: 768px) {
	.woocommerce-account .woocommerce-MyAccount-navigation {
		width: 28%;
		margin-right: 4%;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		width: 68%;
	}
}

/* Storefront sets display:block and padding:.875em 0 with .hentry .entry-content … li.woocommerce-MyAccount-navigation-link a. */
.woocommerce-MyAccount-navigation ul li a,
.woocommerce-account .hentry .entry-content .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link a {
	display: flex;
	align-items: center;
	min-height: 42px;
	padding: 0 14px;
	border-radius: var(--dq-radius-sm);
	color: var(--dq-ink);
	font-size: var(--dq-text-sm);
	text-decoration: none;
}

.woocommerce-MyAccount-navigation ul li a::before {
	display: none;
}

.woocommerce-MyAccount-navigation ul li a:hover {
	background-color: var(--dq-section);
	color: var(--dq-ink);
}

.woocommerce-MyAccount-navigation ul li.is-active a {
	background-color: var(--dq-brand-soft);
	color: var(--dq-brand-hover);
	font-weight: 600;
}

@media (max-width: 767px) {
	.woocommerce-MyAccount-navigation ul {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 6px;
	}

	.woocommerce-MyAccount-navigation ul li a {
		background-color: var(--dq-section);
		border-radius: var(--dq-radius-pill);
	}
}

table.shop_table,
.woocommerce-MyAccount-content table {
	border-radius: var(--dq-radius-md);
}

/* The approval plugin's cards, lab cases and courses: colours, corners and
   font only, on the same class names, until that plugin reads the tokens. */
.dq-card,
.dentiquip-lab-summary,
.dentiquip-course-card {
	border-radius: var(--dq-radius-lg);
}

.dq-warn {
	border-radius: var(--dq-radius-md);
}

/* The mini-cart in the header: View cart as the secondary button,
   Checkout as the primary one. */
.widget_shopping_cart .buttons {
	display: flex;
	gap: var(--dq-space-2);
}

.widget_shopping_cart .buttons a.button {
	flex: 1 1 0;
	min-height: 44px;
	background-color: #fff;
	color: var(--dq-brand);
	box-shadow: inset 0 0 0 1.5px var(--dq-brand);
}

.widget_shopping_cart .buttons a.button.checkout {
	background-color: var(--dq-brand);
	color: #fff;
	box-shadow: none;
}
