/* Ledger & Ink presentation for the compliance reminder enquiry page. */
.reminders-page {
  --rem-paper: #f7f5ef;
  --rem-surface: #fffefa;
  --rem-ink: #172338;
  --rem-muted: #586579;
  --rem-line: #d8d8d0;
  --rem-teal: #176d70;
  --rem-teal-strong: #0f5559;
  --rem-gold: #b9873d;
  background: var(--rem-paper) !important;
  color: var(--rem-ink) !important;
  overflow-x: clip;
  font-family: "IBM Plex Sans", "Noto Sans", Arial, sans-serif;
}
.reminders-page *, .reminders-page *::before, .reminders-page *::after { box-sizing: border-box; }
.reminders-page a { overflow-wrap: anywhere; }
.reminders-page :focus-visible { outline: 3px solid #d18b48 !important; outline-offset: 3px; }
.reminders-page .container { width: min(1180px, calc(100% - 40px)); }
.reminders-page .skip-link { z-index: 200; }
.reminders-page .tricolor { height: 3px; background: linear-gradient(90deg, #176d70 0 34%, #d9b469 34% 67%, #a75b43 67%); }
.reminders-page .utility-bar, .reminders-page .site-header, .reminders-page .primary-nav { background: #172338; color: #e9edf1; border-color: #344258; }
.reminders-page .utility-bar a { color: #e9edf1; min-height: 44px; display: inline-flex; align-items: center; }
.reminders-page .header-inner { min-height: 78px; gap: 20px; }
.reminders-page .brand-mark { display: none !important; }
.reminders-page .brand-text .b-name { color: #f8f6ef !important; font: 600 31px/1 Georgia, "Times New Roman", serif; letter-spacing: -.045em; }
.reminders-page .brand-text .b-name::after { content: "."; color: #64b8b4; }
.reminders-page .brand-text .b-sub { color: #b9c6d0 !important; letter-spacing: .08em; }
.reminders-page .nav-inner { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; padding-block: 7px; }
.reminders-page .nav-inner a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 11px; border-radius: 5px; color: #d8e0e8; }
.reminders-page .nav-inner a:hover, .reminders-page .nav-inner a.active { background: #26374e; color: #fff; }
.reminders-page .nav-inner .cta-nav { color: #9bd1c8; }
.reminders-page .btn { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; border-radius: 4px; padding: 11px 16px; text-align: center; white-space: normal; }
.reminders-page .btn-primary { background: var(--rem-teal) !important; border-color: var(--rem-teal) !important; color: #fff !important; }
.reminders-page .btn-primary:hover { background: var(--rem-teal-strong) !important; }
.reminders-page .btn-outline { color: var(--rem-teal-strong); border-color: var(--rem-teal); }
.reminders-page .btn-outline:hover { background: var(--rem-teal); color: #fff; }
.reminders-page .reminder-breadcrumb { background: var(--rem-paper); border-bottom: 1px solid var(--rem-line); color: var(--rem-muted); }
.reminders-page .reminder-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 7px 12px; margin: 0; padding: 11px 0; list-style: none; }
.reminders-page .reminder-breadcrumb li { margin: 0; padding: 0; }
.reminders-page .reminder-breadcrumb li::before { content: none !important; display: none !important; }
.reminders-page .reminder-breadcrumb a { color: var(--rem-teal-strong); text-decoration: underline; text-underline-offset: 3px; }
.reminders-page .reminder-breadcrumb [aria-current="page"] { color: var(--rem-muted); }
.reminders-page .reminder-hero { padding: clamp(38px, 6vw, 72px) 0; background: #172338 !important; color: #f7f5ef; border-bottom: 1px solid #344258; }
.reminders-page .reminder-hero::before { background: linear-gradient(135deg, transparent 60%, rgba(73,149,147,.12)); }
.reminders-page .reminder-hero-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr); gap: clamp(24px, 5vw, 64px); align-items: center; }
.reminders-page .reminder-hero-grid > *, .reminders-page .reminder-hero-copy { min-width: 0; }
.reminders-page .reminder-hero .eyebrow { color: #9bd1c8; border: 1px solid #45666a; background: #20364a; border-radius: 3px; letter-spacing: .08em; }
.reminders-page .reminder-hero h1 { max-width: 100%; overflow-wrap: anywhere; font: 600 clamp(35px, 5vw, 58px)/1.08 Georgia, "Times New Roman", serif; letter-spacing: -.035em; }
.reminders-page .reminder-hero h1 .accent { color: #85c9bf; }
.reminders-page .reminder-hero p { color: #d5dce2; line-height: 1.75; max-width: 690px; }
.reminders-page .hero-cta, .reminders-page .cta-btns { display: flex; flex-wrap: wrap; gap: 10px; }
.reminders-page .hero-cta .btn-outline { color: #f8f6ef; border-color: #7e8d9e; }
.reminders-page .hero-cta .btn-outline:hover { background: #f8f6ef; color: #172338; }
.reminders-page .hero-note { margin: 16px 0 0; font-size: 13px; }
.reminders-page .enquiry-note { padding: clamp(22px, 3vw, 34px); background: var(--rem-surface); color: var(--rem-ink); border: 1px solid var(--rem-line); border-top: 4px solid var(--rem-teal); border-radius: 5px; box-shadow: 0 16px 45px rgba(0,0,0,.2); }
.reminders-page .note-kicker, .reminders-page .sec-kicker { color: var(--rem-teal-strong); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.reminders-page .enquiry-note h2 { margin: 8px 0 14px; color: var(--rem-ink); font: 600 25px/1.2 Georgia, "Times New Roman", serif; }
.reminders-page .enquiry-note ul { margin: 0 0 16px; padding-left: 20px; color: var(--rem-muted); line-height: 1.7; }
.reminders-page .enquiry-note li { margin: 5px 0; }
.reminders-page .enquiry-note p { margin: 0; color: var(--rem-muted); font-size: 13px; line-height: 1.6; }
.reminders-page .enquiry-steps, .reminders-page .enquiry-section, .reminders-page .reminder-faq-section { padding: clamp(42px, 6vw, 68px) 0; background: var(--rem-paper); }
.reminders-page .section-heading { max-width: 760px; margin: 0 auto 28px; text-align: center; }
.reminders-page .section-heading h2 { margin: 8px 0; color: var(--rem-ink); font: 600 clamp(28px, 3.5vw, 38px)/1.15 Georgia, "Times New Roman", serif; letter-spacing: -.025em; }
.reminders-page .section-heading p { margin: 0 auto; color: var(--rem-muted); line-height: 1.65; }
.reminders-page .how-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 15px; margin-top: 30px; }
.reminders-page .how-step { position: relative; min-width: 0; padding: 26px 18px 20px; background: var(--rem-surface); border: 1px solid var(--rem-line); border-top: 3px solid var(--rem-teal); border-radius: 4px; }
.reminders-page .how-step.s2 { border-top-color: #b9873d; }
.reminders-page .how-step.s3 { border-top-color: #a75b43; }
.reminders-page .how-step.s4 { border-top-color: #496c5b; }
.reminders-page .how-step .num { display: inline-flex; width: 29px; height: 29px; align-items: center; justify-content: center; border-radius: 50%; background: var(--rem-teal); color: white; font-weight: 700; }
.reminders-page .how-step h3 { margin: 13px 0 7px; color: var(--rem-ink); font: 600 19px/1.25 Georgia, "Times New Roman", serif; }
.reminders-page .how-step p { margin: 0; color: var(--rem-muted); font-size: 14px; line-height: 1.6; }
.reminders-page .enquiry-section { background: #eceee8; border-block: 1px solid var(--rem-line); }
.reminders-page .subscribe-form { max-width: 880px; margin: 0 auto; padding: clamp(20px, 4vw, 38px); background: var(--rem-surface); color: var(--rem-ink); border: 1px solid var(--rem-line); border-top: 4px solid var(--rem-teal); border-radius: 5px; box-shadow: 0 10px 30px rgba(23,35,56,.06); }
.reminders-page .subscribe-form h3 { margin: 0 0 6px; color: var(--rem-ink); font: 600 25px/1.2 Georgia, "Times New Roman", serif; }
.reminders-page .subscribe-form > p { margin: 0 0 20px; color: var(--rem-muted); font-size: 14px; }
.reminders-page .form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.reminders-page .field { min-width: 0; margin: 0; }
.reminders-page .subscribe-form .field label { display: block; margin: 0 0 6px; color: var(--rem-ink); font-size: 13px; font-weight: 700; }
.reminders-page .subscribe-form input, .reminders-page .subscribe-form select { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #8b96a2; border-radius: 4px; background: var(--rem-surface); color: var(--rem-ink); font: inherit; font-size: 15px; }
.reminders-page .subscribe-form input::placeholder { color: #6d7885; opacity: 1; }
.reminders-page .subscribe-form small { display: block; margin-top: 5px; color: var(--rem-muted); font-size: 12px; }
.reminders-page .deadlines-pick { min-width: 0; margin: 22px 0 0; padding: 0; border: 0; }
.reminders-page .deadlines-pick legend { margin-bottom: 8px; color: var(--rem-ink); font-size: 14px; font-weight: 700; }
.reminders-page .chip-row { display: flex; flex-wrap: wrap; gap: 8px; }
.reminders-page .chip-row label { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; padding: 8px 12px; border: 1px solid var(--rem-line); border-radius: 4px; background: var(--rem-surface); color: var(--rem-ink); cursor: pointer; font-size: 13px; font-weight: 600; }
.reminders-page .chip-row label:has(input:checked) { border-color: var(--rem-teal); background: color-mix(in srgb, var(--rem-teal) 11%, var(--rem-surface)); }
.reminders-page .chip-row input { width: 18px; height: 18px; min-height: 0; margin: 0; accent-color: var(--rem-teal); }
.reminders-page .submit-row, .reminders-page .success-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.reminders-page .form-note, .reminders-page .fallback-note { margin: 12px 0 0; color: var(--rem-muted); font-size: 13px; line-height: 1.55; }
.reminders-page .form-error { margin: 16px 0 0; padding: 11px 13px; background: #fff1ec; color: #7c2e1e; border-left: 4px solid #a0442d; }
.reminders-page .form-success-card { max-width: 880px; margin: 0 auto; padding: clamp(22px, 4vw, 40px); background: var(--rem-surface); color: var(--rem-ink); border: 1px solid var(--rem-line); border-top: 4px solid var(--rem-teal); border-radius: 5px; }
.reminders-page .success-mark { display: inline-flex; width: 48px; height: 48px; align-items: center; justify-content: center; border-radius: 50%; background: var(--rem-teal); color: white; font-size: 24px; }
.reminders-page .form-success-card h3 { margin: 14px 0 8px; color: var(--rem-ink); font: 600 26px/1.2 Georgia, "Times New Roman", serif; }
.reminders-page .form-success-card p { max-width: 700px; margin: 0; color: var(--rem-muted); line-height: 1.65; }
.reminders-page .form-success-card .fallback-note { margin-top: 14px; font-size: 13px; }
.reminders-page .reminder-faq { max-width: 800px; margin: 0 auto; overflow: hidden; background: var(--rem-surface); border: 1px solid var(--rem-line); border-radius: 4px; }
.reminders-page .reminder-faq details { border-bottom: 1px solid var(--rem-line); }
.reminders-page .reminder-faq details:last-child { border-bottom: 0; }
.reminders-page .reminder-faq summary { display: flex; min-height: 58px; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 20px; color: var(--rem-ink); cursor: pointer; font-weight: 700; list-style: none; }
.reminders-page .reminder-faq summary::-webkit-details-marker { display: none; }
.reminders-page .reminder-faq summary::after { content: "+"; color: var(--rem-teal-strong); font-size: 23px; }
.reminders-page .reminder-faq details[open] summary::after { content: "−"; }
.reminders-page .reminder-faq .ans { padding: 0 20px 18px; color: var(--rem-muted); font-size: 14px; line-height: 1.65; }
.reminders-page .reminder-faq .ans a { color: var(--rem-teal-strong); text-decoration: underline; text-underline-offset: 3px; }
.reminders-page .reminder-cta { padding: 42px 0; background: #e8eee9; border-block: 1px solid var(--rem-line); color: var(--rem-ink); }
.reminders-page .reminder-cta h2 { color: var(--rem-ink); font: 600 clamp(27px, 3vw, 36px)/1.2 Georgia, "Times New Roman", serif; }
.reminders-page footer { background: #172338; color: #e1e7ea; }
.reminders-page footer a { color: #9bd1c8; }
.reminders-page .wa-fab { display: none !important; }

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .reminders-page { --rem-paper:#111a27; --rem-surface:#1b2838; --rem-ink:#edf0ed; --rem-muted:#c0cad3; --rem-line:#3c4b5d; --rem-teal:#83c9c2; --rem-teal-strong:#9ad8cf; }
  :root:not([data-theme="light"]) .reminders-page .enquiry-section, :root:not([data-theme="light"]) .reminders-page .reminder-cta { background:#1a2b37; }
  :root:not([data-theme="light"]) .reminders-page .enquiry-note, :root:not([data-theme="light"]) .reminders-page .subscribe-form, :root:not([data-theme="light"]) .reminders-page .form-success-card, :root:not([data-theme="light"]) .reminders-page .how-step, :root:not([data-theme="light"]) .reminders-page .reminder-faq { box-shadow:none; }
  :root:not([data-theme="light"]) .reminders-page .reminder-breadcrumb { border-color:var(--rem-line); }
  :root:not([data-theme="light"]) .reminders-page .subscribe-form input, :root:not([data-theme="light"]) .reminders-page .subscribe-form select { border-color:#718094; }
}
:root[data-theme="dark"] .reminders-page { --rem-paper:#111a27; --rem-surface:#1b2838; --rem-ink:#edf0ed; --rem-muted:#c0cad3; --rem-line:#3c4b5d; --rem-teal:#83c9c2; --rem-teal-strong:#9ad8cf; }
:root[data-theme="dark"] .reminders-page .enquiry-section, :root[data-theme="dark"] .reminders-page .reminder-cta { background:#1a2b37; }
:root[data-theme="dark"] .reminders-page .reminder-breadcrumb { border-color:var(--rem-line); }
:root[data-theme="dark"] .reminders-page .subscribe-form input, :root[data-theme="dark"] .reminders-page .subscribe-form select { border-color:#718094; }

@media (max-width: 900px) {
  .reminders-page .primary-nav { overflow-x:auto; overscroll-behavior-inline:contain; -webkit-overflow-scrolling:touch; }
  .reminders-page .nav-inner { width:max-content; min-width:100%; flex-wrap:nowrap; }
  .reminders-page .reminder-hero-grid { grid-template-columns:minmax(0, 1fr) minmax(250px, .85fr); }
  .reminders-page .how-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .reminders-page .container { width:min(100% - 28px, 620px); }
  .reminders-page .header-inner { align-items:center; flex-wrap:wrap; padding-block:12px; }
  .reminders-page .header-cta { justify-content:flex-start; }
  .reminders-page .reminder-hero-grid { grid-template-columns:1fr; }
  .reminders-page .hero-cta, .reminders-page .cta-btns { align-items:stretch; }
  .reminders-page .hero-cta .btn, .reminders-page .cta-btns .btn { width:100%; }
  .reminders-page .utility-inner { align-items:flex-start; gap:8px; }
}
@media (max-width: 520px) {
  .reminders-page .container { width:calc(100% - 24px); }
  .reminders-page .header-inner { gap:10px; }
  .reminders-page .header-cta { gap:6px; }
  .reminders-page .header-cta .btn { padding-inline:10px; }
  .reminders-page .utility-right { display:flex; flex-wrap:wrap; gap:4px 12px; }
  .reminders-page .reminder-hero h1 { font-size:36px; }
  .reminders-page .how-grid, .reminders-page .form-grid { grid-template-columns:1fr; }
  .reminders-page .submit-row, .reminders-page .success-actions { flex-direction:column; }
  .reminders-page .submit-row .btn, .reminders-page .success-actions .btn { width:100%; }
  .reminders-page .chip-row label { flex:1 1 145px; }
}
@media (max-width: 360px) {
  .reminders-page .container { width:calc(100% - 20px); }
  .reminders-page .brand-text .b-name { font-size:27px; }
  .reminders-page .header-cta .btn { min-height:44px; padding-inline:8px; font-size:12px; }
  .reminders-page .reminder-hero h1 { font-size:32px; }
  .reminders-page .utility-inner { align-items:flex-start; }
  .reminders-page .utility-right { flex-basis:100%; }
}
