/* Aurora Cabins: information sections added 2026-10-24 (facts tables, FAQ). */
.ac-info { max-width: 900px; margin: 0 auto; text-align: left; color: #222; }
.ac-info h1, .ac-info h2 { font-size: 32px; line-height: 1.25; margin: 40px 0 16px; color: #000; }
.ac-info > h2:first-child { margin-top: 0; }
.ac-info h3 { font-size: 21px; line-height: 1.35; margin: 26px 0 8px; color: #161922; }
.ac-info p, .ac-info li { font-size: 16px; line-height: 1.65; color: #333; }
.ac-info ul { margin: 0 0 18px 20px; }
.ac-info a { color: #3a8253; text-decoration: underline; }
.ac-info table { width: 100%; border-collapse: collapse; margin: 12px 0 24px; font-size: 15px; background: #fff; }
.ac-info th, .ac-info td { border-bottom: 1px solid #e3e3e3; padding: 10px 12px; text-align: left; vertical-align: top; color: #333; }
.ac-info thead th, .ac-info tbody th { background: #f4f6f4; font-weight: 600; color: #161922; }
.ac-info tbody th { width: 30%; }
.ac-info .ac-note { font-size: 13px; line-height: 1.5; color: #666; }
@media only screen and (max-width: 767px) {
	.ac-info h1, .ac-info h2 { font-size: 25px; }
	.ac-info h3 { font-size: 19px; }
	.ac-info table { display: block; overflow-x: auto; font-size: 14px; }
	.ac-info th, .ac-info td { padding: 8px; }
}

/* Footer: guest information links (2026-10-25) */
.ac-footer-links { font-size: 13px; line-height: 1.9; margin: 0 0 10px; }
.ac-footer-links a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }

/* Policy pages (2026-10-25): cancellation 424, booking terms 425, about 426 use the dark look of the guest policy (347) */
body.page-id-424 #Subheader, body.page-id-425 #Subheader, body.page-id-426 #Subheader, body.page-id-427 #Subheader { display: none !important; }
body.page-id-424 #Content, body.page-id-424 .sections_group, body.page-id-424 .entry-content, body.page-id-424 .the_content,
body.page-id-425 #Content, body.page-id-425 .sections_group, body.page-id-425 .entry-content, body.page-id-425 .the_content,
body.page-id-426 #Content, body.page-id-426 .sections_group, body.page-id-426 .entry-content, body.page-id-426 .the_content,
body.page-id-427 #Content, body.page-id-427 .sections_group, body.page-id-427 .entry-content, body.page-id-427 .the_content {
	background: #0a0a0a !important; background-color: #0a0a0a !important;
}
.ac-card .ac-policy-item h2 { color: #fff; font-size: 18px; text-transform: none; letter-spacing: 0; margin: 0 0 8px; }
.ac-page .ac-note { color: rgba(255,255,255,0.6); text-align: center; margin: 8px 0 24px; }
.ac-page a { color: #4ade80; }
.ac-card table { width: 100%; border-collapse: collapse; margin: 0 0 16px; font-size: 15px; }
.ac-card th, .ac-card td { text-align: left; padding: 8px 10px; border-bottom: 1px solid rgba(74,222,128,0.15); color: rgba(255,255,255,0.75); }
.ac-card th { color: #fff; font-weight: 500; }
.ac-card th { background: rgba(74,222,128,0.08) !important; }
/* Pages without the title bar: keep the H1 below the fixed header (header is ~142px high) */
body.page-id-330 .ac-page, body.page-id-347 .ac-page, body.page-id-424 .ac-page,
body.page-id-425 .ac-page, body.page-id-426 .ac-page, body.page-id-427 .ac-page { padding-top: 180px; }
.ac-card .ac-policy-item ul { margin: 0 0 12px 18px; }
.ac-card .ac-policy-item li { color: rgba(255,255,255,0.75); margin: 0 0 6px; }
.ac-card .ac-policy-item li strong { color: #fff; }

/* Contrast fixes (2026-10-25, WCAG AA 4.5:1) */
/* Reservation page (310) has a dark background: light text for the information sections */
body.page-id-310 .ac-info { color: #e0e0e0; }
body.page-id-310 .ac-info h1, body.page-id-310 .ac-info h2, body.page-id-310 .ac-info h3, body.page-id-310 .ac-info b, body.page-id-310 .ac-info strong { color: #fff; }
body.page-id-310 .ac-info p, body.page-id-310 .ac-info li { color: rgba(255,255,255,0.78); }
body.page-id-310 .ac-info a { color: #4ade80; }
body.page-id-310 .ac-info .ac-note { color: rgba(255,255,255,0.65); }
body.page-id-310 .ac-info table { background: transparent; }
body.page-id-310 .ac-info th, body.page-id-310 .ac-info td { color: rgba(255,255,255,0.78); border-bottom-color: rgba(74,222,128,0.15); }
body.page-id-310 .ac-info thead th, body.page-id-310 .ac-info tbody th { background: rgba(74,222,128,0.08); color: #fff; }
/* Theme accent (default Betheme blue #0089f7, 3.5:1 on white) on light sections: brand green that passes */
.themecolor, .ui-tabs .ui-tabs-nav li a, .ui-tabs .ui-tabs-nav li.ui-state-active a { color: #2b7a48 !important; }
/* Welcome page: "Scan here" captions */
.ac-welcome-qr span { color: rgba(255,255,255,0.7) !important; }
/* Thank-you page (312): body text was #a8a8a8 on white */
body.page-id-312 .fancy_heading .inside p { color: #4a4a4a !important; }

/* Home: the mobile hero repeats the desktop hero; its title is a <p> so the page has one H1 (2026-10-25). Same look as the theme's mobile H1. */
.ac-hero-title { font-family: "century-gothic", "Century Gothic", "cg-fallback", sans-serif !important; font-size: 30px !important; font-weight: 500 !important;
	line-height: 36px !important; letter-spacing: normal; margin: 0 0 15px !important; text-align: center; color: #fff !important; }
.ac-hero-title span { font-weight: 600 !important; font-size: inherit !important; }

/* Reservation: keep room for the booking form until booking.js draws it, so the content below does not jump (CLS) (2026-10-25) */
#aurora-booking:empty { min-height: 434px; }
@media (min-width: 480px) { #aurora-booking:empty { min-height: 454px; } }
@media (min-width: 768px) { #aurora-booking:empty { min-height: 464px; } }
