/* Policies v1.1. Source: supplied page-house-rules.php.
   Approved AmanDagat palette; all selectors scoped to this page. */
body.amandagat-policies {
  --ink: #0c2340;
  --deep: #0c2340;
  --night: #0c2340;
  --limewash: #f4f8f9;
  --sand: #fff;
  --brass: #14549e;
  --brass-light: #d6a8a8;
  --gold: #d6a8a8;
  --white: #fff;
  background: #fff;
  color: #0c2340;
}
/* The existing header, logo, navigation and footer retain their structure. */
body.amandagat-policies .util-strip { background: #f4f8f9; border-color: #ccd6df; }
body.amandagat-policies .util-strip a { color: #0c2340; }
body.amandagat-policies .util-strip a:hover { color: #14549e; }
body.amandagat-policies .util-strip > span { color: #14549e !important; }
body.amandagat-policies #nav.solid { background: rgba(255,255,255,.98); }
body.amandagat-policies #nav .nav-dd-menu { background: #0c2340; border-color: #ccd6df; }
body.amandagat-policies footer.starry { background: #0c2340; color: #fff; }
body.amandagat-policies footer .fg h4 { color: #d6a8a8; }
body.amandagat-policies .btn-brass { background: #14549e; color: #fff !important; border: 1px solid #14549e; box-shadow: none; }
body.amandagat-policies .btn-brass:hover { background: #0c2340; border-color: #0c2340; box-shadow: none; }
body.amandagat-policies :focus-visible { outline: 3px solid #14549e; outline-offset: 5px; }

/* Policy copy stays visible, in its original order, without disclosure controls. */
#amandagat-policies { font-size: 17px; line-height: 1.75; }
#amandagat-policies :is(h1,h2) { font-weight: 400; letter-spacing: -.025em; }
#amandagat-policies .policy-wrap { width: 100%; max-width: 1236px; margin-inline: auto; padding-inline: 28px; }
#amandagat-policies .policy-heading { max-width: 816px; padding-top: 138px; padding-bottom: 0; }
#amandagat-policies .policy-kicker { display: block; margin: 14px 0 12px; font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #14549e; }
#amandagat-policies .policy-heading h1 { margin: 0; font-size: clamp(32px,4vw,46px); line-height: 1.2; color: #0c2340; }
#amandagat-policies .policy-heading h1 em { font-style: normal; color: inherit; }
#amandagat-policies .am-back { display: inline-flex; align-items: center; min-height: 44px; color: #14549e; font-size: 14px; font-weight: 600; }
#amandagat-policies .am-back:hover { color: #0c2340; }

#amandagat-policies .policy-intro { max-width: 816px; padding-block: 26px 52px; }
#amandagat-policies .policy-intro p { margin: 0; font-size: 18px; line-height: 1.8; color: #0c2340; }
#amandagat-policies .policy-intro p + p { margin-top: 22px; color: #44515d; }
#amandagat-policies .policy-hours { padding: 60px 0; background: #f4f8f9; scroll-margin-top: 150px; }
#amandagat-policies .policy-hours-layout { display: grid; grid-template-columns: minmax(0,.78fr) minmax(0,1.72fr); gap: 64px; align-items: start; }
#amandagat-policies .policy-hours h2 { font-size: clamp(30px,3.3vw,42px); line-height: 1.2; color: #0c2340; max-width: 300px; }
#amandagat-policies .hours { margin: 0; min-width: 0; background: transparent; border: 0; padding: 0; }
#amandagat-policies .policy-hour { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.4fr); gap: 20px; padding: 18px 0; border-bottom: 1px solid #ccd6df; }
#amandagat-policies .policy-hour:first-child { border-top: 2px solid #d6a8a8; }
#amandagat-policies .policy-hour:last-child { border-bottom: 0; padding-bottom: 0; }
#amandagat-policies .policy-hour dt { color: #14549e; font-size: 16px; font-weight: 700; line-height: 1.65; }
#amandagat-policies .policy-hour dd { margin: 0; min-width: 0; font-size: 16px; color: #0c2340; line-height: 1.65; }

#amandagat-policies .policy-rules { padding-block: 72px 84px; }
#amandagat-policies .seclabel { font-family: var(--body); font-size: 12px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: #14549e; margin: 0 0 30px; }
#amandagat-policies .policy-rule { display: grid; grid-template-columns: minmax(0,.78fr) minmax(0,1.72fr); gap: 64px; padding: 36px 0; border-top: 1px solid #ccd6df; }
#amandagat-policies .policy-rule:first-of-type { border-top-color: #d6a8a8; }
#amandagat-policies h2.rule { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 16px; margin: 0; font-family: var(--display); font-size: 26px; line-height: 1.23; color: #0c2340; }
#amandagat-policies h2.rule span { color: #14549e; font-size: 30px; font-variant-numeric: lining-nums tabular-nums; }
#amandagat-policies .policy-rule-copy { min-width: 0; max-width: 68ch; color: #44515d; }
#amandagat-policies .policy-rule-copy p { margin: 0 0 14px; font-size: 17px; line-height: 1.75; }
#amandagat-policies .policy-rule-copy ul { padding-left: 22px; margin: 12px 0 16px; font-size: 17px; }
#amandagat-policies .policy-rule-copy li { margin: 0 0 7px; padding-left: 4px; line-height: 1.75; }
#amandagat-policies .policy-rule-copy li::marker { color: #14549e; }
#amandagat-policies .policy-rule-copy > :last-child { margin-bottom: 0; }
#amandagat-policies .policy-closing { padding: 64px 0; background: #f4f8f9; }
#amandagat-policies .closing { max-width: 800px; margin: 0 auto; padding-top: 30px; border-top: 2px solid #d6a8a8; font-family: var(--display); font-size: clamp(25px,3vw,34px); line-height: 1.45; color: #0c2340; text-align: center; }

@media(max-width:1080px) {
  body.amandagat-policies #nav ul.open { background: #fff; }
  body.amandagat-policies #nav .nav-dd-menu { background: transparent; }
  body.amandagat-policies #nav ul.open :is(a,.nav-dd-btn) { color: #0c2340 !important; }
  body.amandagat-policies #nav ul.open .btn-brass { color: #fff !important; }
  #amandagat-policies .policy-heading { padding-top: 100px; }
  #amandagat-policies :is(.policy-hours-layout,.policy-rule) { grid-template-columns: minmax(0,.9fr) minmax(0,1.6fr); gap: 36px; }
  #amandagat-policies h2.rule { grid-template-columns: 34px minmax(0,1fr); gap: 12px; font-size: 24px; }
  #amandagat-policies h2.rule span { font-size: 27px; }
}
@media(max-width:820px) {
  #amandagat-policies :is(.policy-hours-layout,.policy-rule) { grid-template-columns: minmax(0,1fr); gap: 22px; }
  #amandagat-policies .policy-hours h2 { max-width: none; }
  #amandagat-policies .policy-rule-copy { max-width: none; }
  #amandagat-policies h2.rule { grid-template-columns: 40px minmax(0,1fr); }
  #amandagat-policies .policy-rule-copy { padding-left: 52px; }
}
@media(max-width:560px) {
  #amandagat-policies .policy-heading { padding-top: 94px; }
  #amandagat-policies .policy-heading h1 { font-size: 32px; }
  #amandagat-policies .policy-wrap { padding-inline: 22px; }
  #amandagat-policies .policy-intro { padding-block: 22px 38px; }
  #amandagat-policies .policy-intro p { font-size: 17px; }
  #amandagat-policies .policy-hours { padding-block: 42px; scroll-margin-top: 100px; }
  #amandagat-policies .policy-hours h2 { font-size: 32px; }
  #amandagat-policies .policy-hour { grid-template-columns: minmax(0,1fr); gap: 5px; padding-block: 16px; }
  #amandagat-policies .policy-hour dd { font-size: 17px; }
  #amandagat-policies .policy-rules { padding-block: 44px 48px; }
  #amandagat-policies .seclabel { margin-bottom: 22px; }
  #amandagat-policies .policy-rule { gap: 16px; padding-block: 28px; }
  #amandagat-policies .policy-rule-copy { padding-left: 0; overflow-wrap: anywhere; }
  #amandagat-policies .policy-closing { padding-block: 44px; }
}
@media print {
  body.amandagat-policies :is(#nav,.util-strip,footer,.msgr-fab,.review-notice,.policy-back) { display: none !important; }
  body.amandagat-policies { padding: 0 !important; background: #fff; }
  #amandagat-policies .policy-heading { padding-top: 20px; }
  #amandagat-policies .policy-heading h1 { font-size: 32px; }
  #amandagat-policies .policy-wrap { max-width: none; padding-inline: 0; }
  #amandagat-policies .policy-rule { break-inside: avoid; }
}
