/* Consent-only styling; keep the existing website identity and layout. */
#cc-main {
    --cc-font-family: 'NotoSans', 'NotoSansThai', sans-serif;
    --cc-bg: #fff;
    --cc-primary-color: #262626;
    --cc-secondary-color: #494949;
    --cc-btn-primary-bg: #262626;
    --cc-btn-primary-color: #fff;
    --cc-btn-primary-border-color: #262626;
    --cc-btn-primary-hover-bg: #494949;
    --cc-btn-primary-hover-border-color: #494949;
    --cc-btn-secondary-bg: #f2f2f2;
    --cc-btn-secondary-color: #262626;
    --cc-btn-secondary-border-color: #d2d2d2;
    --cc-toggle-on-bg: #262626;
    --cc-border-radius: 4px;
    --cc-btn-border-radius: 3px;
    --cc-modal-transition-duration: 0.15s;
}
#cc-main .cm { border-top: 4px solid #ce8a33; }
#cc-main .cm__desc, #cc-main .pm__section-desc { line-height: 1.7; }
#cc-main button { min-height: 44px; }
#cc-main :focus-visible, .mh-consent-button:focus-visible { outline: 3px solid #875415; outline-offset: 3px; }
#cc-main .pm__body { scrollbar-gutter: stable; scrollbar-color: #727272 #f2f2f2; }
.mh-map { min-height: 460px; background: #f2f2f2; }
.mh-map-placeholder { max-width: 680px; margin: auto; padding: 64px 24px; text-align: center; color: #262626; }
.mh-map-placeholder[hidden] { display: none; }
.mh-map-placeholder h2 { font-size: 22px; line-height: 1.5; }
.mh-map-placeholder p { font-size: 16px; line-height: 1.7; }
.mh-map iframe { display: block; width: 100%; height: 460px; border: 0; }
.mh-consent-footer { padding: 18px 24px; text-align: center; background: #f2f2f2; }
.mh-consent-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 24px; margin-bottom: 12px; }
.mh-consent-links a { display: inline-flex; align-items: center; min-height: 44px; color: #262626; text-decoration: underline; text-underline-offset: 3px; }
.mh-consent-links a:focus-visible, .mh-policy-page a:focus-visible, .mh-applicant-notice a:focus-visible { outline: 3px solid #875415; outline-offset: 3px; }
.mh-policy-page { box-sizing: border-box; max-width: 900px; margin: 0 auto; padding: 160px 24px 72px; color: #262626; font-family: 'NotoSans', 'NotoSansThai', sans-serif; font-size: 16px; line-height: 1.8; overflow-wrap: anywhere; }
.mh-policy-page h1 { font-size: clamp(28px, 4vw, 40px); line-height: 1.4; margin: 0 0 24px; }
.mh-policy-page h2 { font-size: 23px; line-height: 1.5; margin: 32px 0 12px; }
.mh-policy-page p, .mh-policy-page ul { margin: 0 0 18px; }
.mh-policy-page ul { list-style: disc; padding-left: 24px; }
.mh-policy-page a, .mh-applicant-notice a { color: #262626; text-decoration: underline; text-underline-offset: 3px; }
.mh-policy-draft, .mh-applicant-notice { background: #f2f2f2; border-left: 4px solid #ce8a33; padding: 20px 24px; }
.mh-applicant-notice { margin: 24px auto; max-width: 900px; font-size: 16px; line-height: 1.8; }
.mh-applicant-notice h2 { font-size: 20px; line-height: 1.5; margin: 0 0 12px; }
.mh-applicant-notice p { margin-bottom: 12px; }
.mh-consent-button { font: inherit; font-size: 15px; line-height: 1.5; min-height: 44px; padding: 10px 20px; border: 1px solid #262626; border-radius: 3px; background: #fff; color: #262626; cursor: pointer; }
.mh-consent-button:hover { background: #262626; color: #fff; }
.mh-consent-button:active { background: #494949; color: #fff; }
.mh-consent-button:disabled { opacity: .6; cursor: not-allowed; }
[data-mh-consent-error] { font-size: 14px; margin: 12px auto; max-width: 640px; }
@media (max-width: 600px) { .mh-map-placeholder { padding: 40px 20px; } .mh-policy-page { padding: 120px 20px 48px; } }
@media (prefers-reduced-motion: reduce) { #cc-main { --cc-modal-transition-duration: 0s; } }
@media (forced-colors: active) { #cc-main .pm__body { scrollbar-color: auto; } }
