.ccu-policy { font-family: 'Open Sans',sans-serif; color: #18344b; background: #f8fafc; }
.ccu-policy *, .ccu-policy *::before, .ccu-policy *::after { box-sizing: border-box; }
.ccu-policy .container::before, .ccu-policy .container::after { content: none; }
.ccu-policy h1, .ccu-policy h2 { font-family: 'Open Sans',sans-serif; color: #18344b; font-weight: 700; line-height: 1.35; margin: 0; }
.ccu-policy p { color: #62788b; font-size: 13px; line-height: 1.9; }
.ccu-policy a { text-decoration: none; }
.policy-hero { padding: 30px 0 48px; background: linear-gradient(110deg,#f6f1e7,#f3f7fa); border-bottom: 1px solid #e4e9ed; }
.ccu-policy .policy-breadcrumb { display: flex; align-items: center; gap: 12px; background: none; box-shadow: none; width: auto; height: auto; line-height: 1.5; font-size: 11px; }
.ccu-policy .policy-breadcrumb a, .ccu-policy .policy-breadcrumb span { color: #63798b; font-size: inherit; }
.policy-hero-layout { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding-top: 35px; }
.ccu-policy .policy-eyebrow { display: block; color: #a37d3b; font-size: 10px; letter-spacing: 2px; font-weight: 700; margin-bottom: 15px; }
.ccu-policy h1 { font-size: 43px; letter-spacing: -1.3px; }
.ccu-policy .policy-hero p { font-size: 14px; margin: 17px 0 22px; }
.ccu-policy .policy-primary { display: inline-flex; align-items: center; gap: 22px; color: #fff; background: #17364e; border-radius: 6px; padding: 13px 20px; font-size: 12px; font-weight: 700; }
.policy-hero-mark { width: 135px; height: 135px; display: flex; flex-direction: column; align-items: center; justify-content: center; flex-shrink: 0; border: 1px solid #ddc99f; border-radius: 50%; background: #ffffff75; }
.policy-hero-mark i { color: #a37d3b; font-size: 35px; margin-bottom: 12px; }
.ccu-policy .policy-hero-mark span { color: #18344b; font-size: 9px; font-weight: 700; letter-spacing: 1.5px; text-align: center; line-height: 1.7; }
.policy-content { padding: 45px 0 60px; }
.ccu-policy .policy-layout { display: grid; grid-template-columns: minmax(0,1fr) 290px; gap: 28px; align-items: start; }
.policy-document { background: #fff; border: 1px solid #e0e7ed; border-radius: 12px; padding: 30px; box-shadow: 0 6px 24px #18344b05; }
.policy-section { scroll-margin-top: 100px; }
.policy-section + .policy-section { border-top: 1px solid #e3e9ef; padding-top: 28px; margin-top: 28px; }
.policy-section-title { display: flex; align-items: center; gap: 15px; margin-bottom: 18px; }
.policy-section-title > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 8px; color: #a37d3b; background: #f6f0e4; font-size: 20px; }
.ccu-policy .policy-section-title h2 { font-size: 24px; }
.policy-section > p { margin: 0; }
.ccu-policy .policy-regulations { list-style: none; padding: 0; margin: 0; counter-reset: policy-rule; }
.policy-regulations li { display: flex; align-items: flex-start; gap: 16px; padding: 20px 0; border-bottom: 1px solid #edf1f5; counter-increment: policy-rule; }
.policy-regulations li::before { content: counter(policy-rule,decimal-leading-zero); display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid #dbe3eb; border-radius: 50%; background: #f8fafc; color: #a37d3b; font-size: 10px; flex-shrink: 0; }
.policy-regulations li:last-child { border-bottom: none; padding-bottom: 0; }
.policy-regulations p { margin: 0; flex: 1; }
.ccu-policy .policy-page-nav { width: auto; height: auto; line-height: normal; background: #fff; box-shadow: none; border: 1px solid #e0e7ed; border-radius: 12px; padding: 25px; }
.ccu-policy .policy-page-nav h2, .ccu-policy .policy-related h2 { font-size: 18px; margin-bottom: 16px; }
.ccu-policy .policy-page-nav a, .ccu-policy .policy-related a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 0; border-top: 1px solid #e3e9ef; color: #456278; font-size: 12px; line-height: 1.7; }
.policy-help { margin-top: 22px; border-radius: 12px; padding: 26px; background: #17364e; }
.policy-help > i { display: block; font-size: 28px; color: #edc47e; margin-bottom: 22px; }
.ccu-policy .policy-help .policy-eyebrow { color: #edc47e; }
.ccu-policy .policy-help h2 { color: #fff; font-size: 24px; }
.ccu-policy .policy-help p { color: #c3d3e0; font-size: 12px; margin: 17px 0 22px; }
.ccu-policy .policy-help a { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 13px 15px; border-radius: 6px; background: #fff; color: #17364e; font-size: 11px; font-weight: 700; }
.policy-related { margin-top: 22px; padding: 25px; border: 1px solid #e0e7ed; background: #fff; border-radius: 12px; }
.ccu-policy a:focus-visible { outline: 3px solid #b18a49; outline-offset: 4px; }
.ccu-policy .policy-primary:hover { background: #28516e; }
@media(max-width:991px) { .ccu-policy .policy-layout { grid-template-columns: minmax(0,1fr) 250px; gap: 22px; } .policy-document { padding: 25px; } .policy-help { padding: 24px; } }
@media(max-width:600px) { .policy-hero { padding: 70px 0 35px; } .ccu-policy .container { width: 100%; padding-left: 22px; padding-right: 22px; } .policy-hero-layout { padding-top: 28px; } .policy-hero-mark, .policy-desktop-break { display: none; } .ccu-policy h1 { font-size: 32px; letter-spacing: -.8px; } .ccu-policy .policy-hero p { font-size: 13px; } .policy-content { padding: 30px 0 45px; } .ccu-policy .policy-layout { grid-template-columns: 1fr; gap: 24px; } .policy-document { padding: 23px; } .ccu-policy .policy-section-title h2 { font-size: 22px; } .policy-regulations li { gap: 12px; } .policy-regulations p { font-size: 12px; } }
.ccu-policy .policy-page-nav a i { display: inline-block; height: auto; line-height: 1; font-size: 14px; float: none; }
