/* P15 R08E-02 BLOCK 01: content-pages.css; SOURCE_SHA256=B5240F3BB2DB4DF36045AFFC7826A6E25A228485CB3D936D10354925394F1D40 */
/* Local content pages, adapted from the approved P15 R12 visual baseline. */
:root{--shell:#0b1433;--shell-deep:#070e27;--navy:#042a54;--muted:#557087;--line:#d8e4ec;--pink:#ed255d;--gold:#a86600;--surface:#fffdf9;--focus:#0c6ebd}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:0;background:var(--shell);color:#102c49;font:17px/1.58 "Segoe UI",Arial,sans-serif;overflow-wrap:anywhere}
a{color:#075c9a;text-underline-offset:.16em}a:hover{color:#c81f53}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.skip-link{position:absolute;top:-5rem;left:1rem;z-index:20;padding:.7rem 1rem;background:#fff}.skip-link:focus{top:1rem}
.site-header{background:var(--shell-deep);color:#fff;border-bottom:1px solid #ffffff24}
.header-inner{max-width:1180px;min-height:76px;margin:auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand,.footer-brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none}.brand:hover{color:#fff}.brand img,.footer-brand img{width:52px;height:52px;object-fit:cover;border-radius:13px;border:1px solid #ffffffb8;background:#fff}.brand strong,.footer-brand strong{display:block;font-size:1.1rem;line-height:1.15}.brand small,.footer-brand small{display:block;font-size:.72rem;color:#d7def2}
.header-nav{display:flex;align-items:center;gap:24px}.header-nav a{color:#fff;text-decoration:none;font-size:.85rem;font-weight:700}.header-nav a:hover{text-decoration:underline}
.header-cta,.primary-link{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:100px;padding:.68rem 1.18rem;background:linear-gradient(135deg,#ed255d,#fc3667);color:#fff!important;text-decoration:none;font-weight:700;box-shadow:0 8px 20px #ed255d33}.header-cta:hover,.primary-link:hover{filter:brightness(1.08)}
.mobile-nav{display:none}.mobile-nav summary{border:1px solid #ffffff55;border-radius:12px;padding:.5rem .8rem;color:#fff;list-style:none;font-weight:700}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav[open] nav{position:absolute;z-index:5;right:1rem;top:4.4rem;min-width:205px;padding:.6rem;background:#101c43;border:1px solid #ffffff44;border-radius:14px;box-shadow:0 12px 28px #0005}.mobile-nav nav a{display:block;padding:.65rem;color:#fff;text-decoration:none}
.page-backdrop{padding:44px 20px 75px;background:radial-gradient(circle at 15% 5%,#273572 0,transparent 29rem),radial-gradient(circle at 85% 20%,#4e3278 0,transparent 33rem),var(--shell)}
.page-card{max-width:920px;margin:auto;padding:clamp(22px,5vw,58px);border:1px solid #dfe6ee;border-radius:24px;background:linear-gradient(145deg,#fffefa,#f8fbff);box-shadow:0 24px 62px #02071c55}
.eyebrow{margin:0 0 9px;color:var(--pink);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
h1,h2,h3{color:var(--navy);font-family:Georgia,"Times New Roman",serif;line-height:1.14;text-wrap:balance}h1{font-size:clamp(2.35rem,5.5vw,4.1rem);letter-spacing:-.045em;margin:0 0 16px}h2{font-size:clamp(1.45rem,3vw,1.95rem);margin:0 0 13px}h3{font-size:1.2rem;margin:0 0 10px}p{margin:0 0 1rem}.lead{max-width:700px;color:var(--muted);font-size:1.16rem}.intro{padding-bottom:19px;border-bottom:1px solid var(--line)}
.content-section{padding:28px 0;border-bottom:1px solid var(--line)}.content-section:last-child{border-bottom:0}.content-section ul{padding-left:1.35rem;margin:.5rem 0 0}.content-section li{margin:.45rem 0}.content-section p:last-child{margin-bottom:0}
.callout{padding:18px 20px;margin:18px 0;border:1px solid #d4e4ee;border-left:4px solid var(--pink);border-radius:14px;background:#f3f8fc}.callout p:last-child{margin:0}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.info-card{padding:18px 20px;border:1px solid var(--line);border-radius:15px;background:#fff}.info-card h3{margin-bottom:7px}.info-card p:last-child{margin-bottom:0}
.faq-list{display:grid;gap:12px;margin-top:25px}.faq-list details{border:1px solid #d8e4ec;border-radius:15px;background:#fff;box-shadow:0 5px 14px #052a5409}.faq-list details[open]{border-color:#b7daf2}.faq-list summary{padding:16px 21px;color:var(--navy);font-weight:750;cursor:pointer}.faq-list details>div{padding:0 21px 18px}.faq-list p:last-child{margin:0}
.action-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:21px}.action-row button{font:inherit;cursor:pointer}.small-note{font-size:.88rem;color:var(--muted)}.meta-note{margin-top:24px;color:var(--muted);font-size:.88rem}
.site-footer{padding:28px 20px 34px;background:var(--shell-deep);color:#d7def2}.footer-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}.footer-brand img{width:42px;height:42px}.footer-links{display:flex;gap:9px 18px;flex-wrap:wrap}.footer-links a,.site-footer a{color:#fff}.copyright{margin:0;font-size:.82rem}
@media(max-width:760px){.header-nav,.header-cta{display:none}.mobile-nav{display:block}.page-backdrop{padding:18px 10px 42px}.page-card{border-radius:20px}.footer-inner{align-items:flex-start;flex-direction:column}.info-grid{grid-template-columns:1fr}}
@media(min-width:761px) and (max-width:960px){.header-nav,.header-cta{display:none}.mobile-nav{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* P15 R08E-02 BLOCK 02: cookie-consent.css; SOURCE_SHA256=4AEBECB3FA16582B965F3E9D8ED2DD6D05BDDCEF97FF4DD89AD24A9AE4074412 */
:root { --cc-banner-height: 0px; }
body.cc-banner-visible { padding-bottom: var(--cc-banner-height); }
.cc-banner[hidden] { display: none !important; }
.cc-banner, .cc-dialog { box-sizing: border-box; color: #09234a; font-family: Inter, Arial, sans-serif; }
.cc-banner *, .cc-dialog * { box-sizing: border-box; }
.cc-banner {
  position: fixed;
  z-index: 10000;
  right: 16px;
  bottom: 16px;
  left: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: min(1120px, calc(100% - 32px));
  max-height: calc(100dvh - 32px);
  margin: 0 auto;
  padding: 15px 20px;
  border: 1px solid #cbdced;
  border-left: 5px solid #f52c72;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 54px rgba(0, 15, 43, .26);
  overflow: auto;
}
.cc-banner h2, .cc-dialog h2 { margin: 0 0 7px; color: #09234a; font-size: 1.28rem; line-height: 1.25; }
.cc-banner p, .cc-dialog p { margin: 0; color: #243d5d; font-size: .94rem; line-height: 1.5; }
.cc-banner a, .cc-dialog a { color: #084f96; text-decoration: underline; }
.cc-banner-copy { flex: 1 1 auto; min-width: 0; }
.cc-banner-actions { display: grid; flex: 0 0 288px; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: 8px; }
.cc-banner-actions .cc-settings { grid-column: 1 / -1; justify-self: start; }
.cc-banner button, .cc-dialog button, .cc-page-button { min-height: 44px; border-radius: 9px; font: inherit; font-size: .88rem; font-weight: 700; cursor: pointer; }
.cc-choice { padding: 9px 14px; border: 2px solid #09234a; background: #09234a; color: #fff; }
.cc-choice:hover { background: #173e6d; border-color: #173e6d; }
.cc-settings { padding: 9px 6px; border: 0; background: transparent; color: #09234a; text-decoration: underline; }
.cc-settings:hover { color: #a40e46; }
.cc-banner button:focus-visible, .cc-dialog button:focus-visible, .cc-dialog input:focus-visible, .cc-page-button:focus-visible, .cc-footer-control:focus-visible {
  outline: 3px solid #0073cf;
  outline-offset: 3px;
}
.cc-dialog { width: min(620px, calc(100% - 24px)); max-height: min(90dvh, 780px); padding: 26px; border: 1px solid #cbdced; border-radius: 18px; box-shadow: 0 18px 54px rgba(0, 15, 43, .3); overflow: auto; overscroll-behavior: contain; }
.cc-dialog::backdrop { background: rgba(0, 13, 37, .62); }
.cc-dialog-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.cc-close { flex: none; width: 44px; padding: 0; border: 0; background: transparent; color: #09234a; font-size: 1.8rem !important; line-height: 1; }
.cc-dialog > p { margin: 2px 0 20px; }
.cc-category { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 16px 0; border-top: 1px solid #d9e5ef; }
.cc-category h3, .cc-category strong { display: block; margin: 0 0 4px; color: #09234a; font-size: 1rem; }
.cc-category small { display: block; color: #243d5d; font-size: .86rem; line-height: 1.45; }
.cc-always { flex: none; color: #395a78; font-size: .84rem; font-weight: 700; }
.cc-toggle-row { cursor: pointer; }
.cc-toggle-row > span { min-width: 0; }
.cc-toggle-row input { flex: none; width: 22px; height: 22px; margin: 0 5px; accent-color: #09234a; cursor: pointer; }
.cc-dialog .cc-dialog-detail { margin: 3px 0 20px; font-size: .86rem; }
.cc-dialog-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.cc-save, .cc-page-button { padding: 9px 14px; border: 2px solid #b51752; background: #b51752; color: #fff; }
.cc-save:hover, .cc-page-button:hover { background: #961044; border-color: #961044; }
.cc-page-action { margin-top: 18px; }
.site-footer nav .cc-footer-control { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem .55rem; border: 0; background: transparent; color: #fff; font: inherit; font-size: .84rem; font-weight: 700; text-decoration: underline; cursor: pointer; }
.site-footer nav .cc-footer-control:hover { color: #ff8cba; }
@media (max-width: 760px) {
  .cc-banner { flex-direction: column; align-items: stretch; gap: 14px; }
  .cc-banner-copy { flex-basis: auto; }
  .cc-banner-actions { flex-basis: auto; }
}
@media (max-width: 560px) {
  .cc-banner { right: 8px; bottom: 8px; left: 8px; width: calc(100% - 16px); padding: 12px; gap: 8px; border-radius: 14px; }
  .cc-banner h2 { margin-bottom: 4px; font-size: 1.35rem; line-height: 1.22; }
  .cc-banner-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: 8px; }
  .cc-banner-actions .cc-choice { padding: 8px; }
  .cc-banner-actions .cc-settings { grid-column: auto; justify-self: stretch; padding: 8px 4px; }
  .cc-dialog { padding: 18px; }
  .cc-dialog-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .cc-dialog-actions .cc-save { grid-column: 1 / -1; }
}
@media (max-width: 360px) {
  .cc-banner-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-banner-actions .cc-settings { grid-column: 1 / -1; }
}

