.akana-package-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.akana-package-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--akana-line, #dce9e8);
	border-radius: 20px;
	background: var(--akana-surface, #fff);
	color: #17343d;
	box-shadow: 0 12px 36px rgb(7 61 80 / 7%);
	transition: transform 180ms ease, box-shadow 180ms ease;
}

.akana-package-card__image {
	width: 100%;
	height: 230px;
	object-fit: cover;
}

.akana-package-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	gap: 18px;
	padding: 28px;
}

.akana-package-card__body h3 {
	margin: 0;
	font-size: 30px;
	line-height: 1.2;
	color: var(--akana-navy, #073d50);
}

.akana-package-card__body p {
	margin: 0;
	font-size: 15px;
	line-height: 1.65;
}

.akana-package-card__body .akana-package-card__price {
	font-size: 25px;
	font-weight: 700;
}

.akana-package-card__quote {
	font-weight: 600;
}

.akana-package-card__features {
	display: grid;
	gap: 12px;
	margin: 0;
	font-size: 15px;
	padding: 0;
	list-style: none;
}

.akana-package-card__body .akana-package-card__note {
	font-size: 13px;
}

.akana-package-card__body .button {
	margin-top: auto;
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.akana-dental-section {
	padding-top: 64px;
	padding-bottom: 64px;
}


.akana-dental-brand-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
}

.akana-dental-brand {
	padding: 24px 0;
	border-top: 1px solid #d9e3e5;
}

.akana-dental-brand h3 {
	font-size: 24px;
}

.akana-dental-brand p,
.akana-dental-brand a {
	font-size: 15px;
}



@media (max-width: 1024px) {

	.akana-package-grid,
	.akana-dental-brand-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {

	.akana-package-grid,
	.akana-dental-brand-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.akana-dental-section {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.akana-package-card__body {
		padding: 24px;
	}
}

/* Dental packages: visual cover, clear inclusions and an anchored action. */


.akana-package-card:hover {
 transform: translateY(-4px);
 box-shadow: 0 20px 40px rgb(7 61 80 / 12%);
}





.akana-package-card__body .eyebrow {
 padding: 7px 12px;
 border-radius: 100px;
 background: var(--akana-primary-soft, #edf8f7);
 color: var(--akana-navy, #073d50);
 font-size: 11px;
 font-weight: 700;
 letter-spacing: 0.1em;
}



.akana-package-card__body .akana-package-card__quote {
 width: 100%;
 padding: 14px 16px;
 border-left: 3px solid var(--akana-primary, #20b8ae);
 border-radius: 0 10px 10px 0;
 background: var(--akana-primary-soft, #edf8f7);
 font-size: 14px;
}



.akana-package-card__features li { position: relative; padding-left: 28px; line-height: 1.5; }

.akana-package-card__features li::before {
 position: absolute;
 top: 1px;
 left: 0;
 display: grid;
 width: 20px;
 height: 20px;
 place-items: center;
 border-radius: 50%;
 background: var(--akana-primary-soft, #edf8f7);
 color: var(--akana-navy, #073d50);
 content: "✓";
 font-size: 12px;
 font-weight: 700;
}

.akana-package-card__details { width: 100%; padding-top: 16px; border-top: 1px solid var(--akana-line, #dce9e8); }

.akana-package-card__details summary { cursor: pointer; color: var(--akana-navy, #073d50); font-size: 14px; font-weight: 600; }

.akana-package-card__details p { margin-top: 12px; color: var(--akana-muted, #60757c); }



.akana-package-card:nth-child(3n + 2) { border-color: var(--akana-primary, #20b8ae); }

.akana-package-card:nth-child(3n + 2) .akana-package-card__quote { background: var(--akana-navy, #073d50); color: #fff; }

/* Split FAQ follows the site's navy and turquoise palette. */
.akana-dental-faq-section { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.3fr); align-items: start; gap: 64px; }

.akana-dental-faq-section .akana-section-heading { margin-bottom: 0; }



.akana-dental-faq-section .akana-section-heading .button { margin-top: 20px; }

.akana-dental-faq { display: grid; gap: 12px; }

.akana-dental-faq details { overflow: hidden; border: 1px solid var(--akana-line, #dce9e8); border-radius: 14px; background: var(--akana-surface, #fff); }

.akana-dental-faq details[open] { border-color: var(--akana-primary, #20b8ae); background: var(--akana-primary-soft, #edf8f7); }

.akana-dental-faq summary { display: flex; align-items: center; gap: 16px; padding: 22px; cursor: pointer; color: var(--akana-navy, #073d50); font-size: 17px; font-weight: 600; line-height: 1.45; list-style: none; }

.akana-dental-faq summary::-webkit-details-marker { display: none; }

.akana-dental-faq__number { flex: 0 0 24px; color: var(--akana-muted, #60757c); font-size: 12px; font-weight: 500; }

.akana-dental-faq__icon { position: relative; flex: 0 0 28px; height: 28px; margin-left: auto; border-radius: 50%; background: var(--akana-navy, #073d50); }

.akana-dental-faq__icon::before,
.akana-dental-faq__icon::after { position: absolute; top: 13px; left: 9px; width: 10px; height: 2px; background: #fff; content: ""; }

.akana-dental-faq__icon::after { transform: rotate(90deg); }

.akana-dental-faq details[open] .akana-dental-faq__icon::after { transform: rotate(0deg); }

.akana-dental-faq p { padding: 0 66px 24px 62px; margin: 0; color: var(--akana-muted, #60757c); font-size: 15px; line-height: 1.8; }

.akana-dental-faq summary:focus-visible,
.akana-package-card__details summary:focus-visible { outline: 3px solid var(--akana-primary, #20b8ae); outline-offset: -3px; }

/* One shared package enquiry dialog, including native keyboard focus handling. */
.akana-package-dialog { position: fixed; width: min(960px, calc(100% - 40px)); max-width: none; max-height: calc(100dvh - 40px); padding: 0; overflow: auto; border: 0; border-radius: 24px; background: #fff; color: var(--akana-ink, #123743); box-shadow: 0 32px 100px rgb(4 44 58 / 30%); }

.akana-package-dialog[open] { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); }

.akana-package-dialog::backdrop { background: rgb(4 44 58 / 70%); backdrop-filter: blur(5px); }

.akana-package-dialog__intro { padding: 48px 32px; background: var(--akana-navy, #073d50); color: #fff; }

.akana-package-dialog__intro .eyebrow { color: var(--akana-sky, #5ed9d1); }

.akana-package-dialog__intro h2 { margin: 24px 0; color: #fff; font-size: clamp(30px, 4vw, 42px); line-height: 1.12; }

.akana-package-dialog__intro > p:last-child { color: #d6e8ec; font-size: 15px; line-height: 1.8; }

.akana-package-dialog__form { padding: 40px 28px 28px; }

.akana-package-dialog__form .akana-form-shell { padding: 0; border: 0; border-radius: 0; box-shadow: none; }

.akana-package-dialog__form .akana-form-shell h2 { margin-top: 0; font-size: 24px; }

.akana-package-dialog__close { position: absolute; z-index: 2; top: 10px; right: 10px; display: grid; width: 32px; height: 32px; padding: 0; place-items: center; border: 1px solid var(--akana-line, #dce9e8); border-radius: 50%; background: #fff; color: var(--akana-navy, #073d50); cursor: pointer; font-size: 24px; line-height: 1; }

.akana-package-dialog-open { overflow: hidden; }

.akana-dental-section .akana-section-heading > p {
	max-width: 760px;
}

.akana-dental-faq-section .akana-section-heading h2 { font-size: clamp(30px, 3vw, 44px); line-height: 1.16; }

@media (max-width: 900px) {

 .akana-dental-faq-section { grid-template-columns: minmax(0, 1fr); gap: 32px; }
}

@media (max-width: 600px) {

 .akana-package-card__body { padding: 24px; }

 .akana-dental-faq summary { gap: 10px; padding: 18px 16px; font-size: 16px; }

 .akana-dental-faq p { padding: 0 20px 22px 50px; }

 .akana-package-dialog { width: calc(100% - 20px); max-height: calc(100dvh - 20px); border-radius: 18px; }

 .akana-package-dialog[open] { grid-template-columns: minmax(0, 1fr); }

 .akana-package-dialog__intro { padding: 28px 24px 20px; }

 .akana-package-dialog__intro h2 { margin: 16px 0; font-size: 30px; }

 .akana-package-dialog__intro > p:last-child { margin-bottom: 0; font-size: 14px; }

 .akana-package-dialog__form { padding: 24px 20px; }
}

@media (prefers-reduced-motion: reduce) {

 .akana-package-card { transition: none; }

 .akana-package-card:hover { transform: none; }
}
