.xc-sample-policy {
    --policy-ink: var(--plum);
    --policy-muted: #999;
    --policy-top: 89px;
    --policy-height: calc(100svh - var(--policy-top));
    color: var(--policy-ink);
    background: var(--ivory);
    border-bottom: 1px solid var(--line);
    min-width: 0;
    scroll-margin-top: 89px;
}
.xc-sample-policy__stage {
    position: relative;
    padding: 64px 5%;
}
.xc-sample-policy__heading {
    position: relative;
    z-index: 3;
    text-align: left;
    pointer-events: none;
}
.xc-sample-policy__heading .eyebrow {
    color: var(--policy-ink);
    margin: 0 0 20px;
}
.xc-sample-policy__heading h2 {
    font: 400 44px/1.18 Georgia, serif;
    letter-spacing: -.035em;
    margin: 0;
    color: var(--policy-ink);
}
.xc-sample-policy__rule {
    position: absolute;
    top: 24px;
    bottom: 24px;
    width: 1px;
    background: var(--policy-ink);
    opacity: 1;
    transform-origin: top;
    pointer-events: none;
}
.xc-sample-policy__rule--left { left: 30px; }
.xc-sample-policy__rule--right { right: 30px; }
.xc-sample-policy__scene {
    position: relative;
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    gap: 24px 6%;
    align-items: center;
    padding: 60px 3%;
    min-width: 0;
}
.xc-sample-policy__image {
    margin: 0;
    overflow: hidden;
    min-width: 0;
    aspect-ratio: 4 / 3;
}
.xc-sample-policy__image--two {
    width: 78%;
    justify-self: end;
    margin-top: 90px;
    aspect-ratio: 1;
}
.xc-sample-policy__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.xc-sample-policy__image[data-fit="contain"] img { object-fit: contain; }
.xc-sample-policy__copy {
    grid-column: 1 / -1;
    max-width: 650px;
    color: var(--policy-ink);
}
.xc-sample-policy__number {
    font: 400 12px/1.5 Arial, Helvetica, sans-serif;
    letter-spacing: .14em;
    margin: 0 0 12px;
}
.xc-sample-policy__copy h3 {
    font: 400 25px/1.15 Georgia, serif;
    letter-spacing: -.025em;
    margin: 0 0 18px;
    color: var(--policy-ink);
}
.xc-sample-policy__description {
    font: 400 15px/1.65 Arial, Helvetica, sans-serif;
    color: var(--policy-muted);
    margin: 0;
}
.xc-sample-policy__pagination { display: none; }
.xc-sample-policy__fee-note { position: relative; isolation: isolate; display: grid; place-items: center; min-height: 480px; padding: 64px 5%; margin-top: 32px; text-align: center; }
.xc-sample-policy__fee-logo { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: min(520px,80%); aspect-ratio: 1; overflow: hidden; filter: grayscale(1); opacity: .06; pointer-events: none; z-index: -1; }
.xc-sample-policy__fee-logo img { display: block; width: 100%; height: auto; max-width: none; }
.xc-sample-policy__fee-copy { width: 100%; max-width: 780px; }
.xc-sample-policy__fee-copy h3 { margin: 0 0 24px; font: 700 30px/1.25 Georgia,serif; color: var(--policy-ink); }
.xc-sample-policy__fee-copy p { margin: 0 auto 20px; font: 400 18px/1.8 Arial,Helvetica,sans-serif; color: #66515c; }
.xc-sample-policy__fee-copy p:last-child { max-width: 710px; margin-bottom: 0; }
.xc-sample-policy.is-enhanced { height: var(--policy-run); }
.xc-sample-policy.is-enhanced .xc-sample-policy__stage {
    position: sticky;
    top: var(--policy-top);
    height: var(--policy-height);
    padding: 0;
    overflow: hidden;
    isolation: isolate;
}
.xc-sample-policy.is-enhanced .xc-sample-policy__heading {
    position: absolute;
    left: 60px;
    top: 32px;
}
.xc-sample-policy.is-enhanced .xc-sample-policy__scenes,
.xc-sample-policy.is-enhanced .xc-sample-policy__scene {
    position: absolute;
    inset: 0;
    padding: 0;
    display: block;
}
.xc-sample-policy.is-enhanced .xc-sample-policy__scenes { right: 400px; }
.xc-sample-policy.is-enhanced .xc-sample-policy__scene { pointer-events: none; }
.xc-sample-policy.is-enhanced .xc-sample-policy__fee-note { position: absolute; inset: 160px 400px 50px 60px; min-height: 0; margin: 0; padding: 20px; opacity: 0; visibility: hidden; pointer-events: none; will-change: opacity; }
.xc-sample-policy.is-enhanced .xc-sample-policy__fee-logo { width: min(520px,65vh); }
.xc-sample-policy.is-enhanced .xc-sample-policy__image,
.xc-sample-policy.is-enhanced .xc-sample-policy__copy {
    position: absolute;
    margin: 0;
    max-width: none;
    aspect-ratio: auto;
    will-change: transform, opacity, clip-path;
}
.xc-sample-policy.is-enhanced .xc-sample-policy__image--one {
    left: var(--a-x);
    top: var(--a-y);
    width: var(--a-w);
    height: var(--a-h);
}
.xc-sample-policy.is-enhanced .xc-sample-policy__image--two {
    left: var(--b-x);
    top: var(--b-y);
    width: var(--b-w);
    height: var(--b-h);
}
.xc-sample-policy.is-enhanced .xc-sample-policy__copy {
    left: var(--copy-x);
    top: var(--copy-y);
    width: var(--copy-w);
}
.xc-sample-policy [data-layout="one"] {
    --a-x: 12%; --a-y: 22%; --a-w: 34%; --a-h: 38%;
    --b-x: 59%; --b-y: 32%; --b-w: 30%; --b-h: 53%;
    --copy-x: 17%; --copy-y: 66%; --copy-w: 35%;
}
.xc-sample-policy [data-layout="two"] {
    --a-x: 55%; --a-y: 20%; --a-w: 33%; --a-h: 43%;
    --b-x: 12%; --b-y: 52%; --b-w: 34%; --b-h: 36%;
    --copy-x: 50%; --copy-y: 70%; --copy-w: 37%;
}
.xc-sample-policy [data-layout="three"] {
    --a-x: 12%; --a-y: 24%; --a-w: 29%; --a-h: 59%;
    --b-x: 55%; --b-y: 20%; --b-w: 32%; --b-h: 34%;
    --copy-x: 55%; --copy-y: 59%; --copy-w: 32%;
}
.xc-sample-policy [data-layout="four"] {
    --a-x: 48%; --a-y: 21%; --a-w: 40%; --a-h: 38%;
    --b-x: 12%; --b-y: 50%; --b-w: 31%; --b-h: 40%;
    --copy-x: 52%; --copy-y: 65%; --copy-w: 34%;
}
.xc-sample-policy [data-layout="five"] {
    --a-x: 9%; --a-y: 23%; --a-w: 36%; --a-h: 39%;
    --b-x: 56%; --b-y: 25%; --b-w: 34%; --b-h: 60%;
    --copy-x: 15%; --copy-y: 68%; --copy-w: 36%;
}
.xc-sample-policy [data-layout="six"] {
    --a-x: 53%; --a-y: 20%; --a-w: 34%; --a-h: 42%;
    --b-x: 12%; --b-y: 21%; --b-w: 33%; --b-h: 65%;
    --copy-x: 51%; --copy-y: 69%; --copy-w: 35%;
}
.xc-sample-policy [data-layout="seven"] {
    --a-x: 18%; --a-y: 24%; --a-w: 33%; --a-h: 38%;
    --b-x: 60%; --b-y: 31%; --b-w: 29%; --b-h: 57%;
    --copy-x: 20%; --copy-y: 68%; --copy-w: 36%;
}
.xc-sample-policy.is-enhanced .xc-sample-policy__pagination {
    position: absolute;
    right: 40px;
    width: 350px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: 6px;
    z-index: 4;
}
.xc-sample-policy__pagination button {
    position: relative;
    width: 100%;
    min-height: 48px;
    border: 0;
    padding: 10px 12px;
    background: transparent;
    color: var(--policy-ink);
    display: grid;
    grid-template-columns: 1fr 24px;
    align-items: center;
    gap: 12px;
    cursor: pointer;
}
.xc-sample-policy__dot {
    grid-column: 2;
    grid-row: 1;
    width: 24px;
    height: 24px;
    overflow: hidden;
    opacity: .35;
    transition: opacity .2s, transform .2s;
}
.xc-sample-policy__dot img { display: block; width: 100%; height: auto; max-width: none; }
.xc-sample-policy__pagination button[aria-current="step"] .xc-sample-policy__dot,
.xc-sample-policy__pagination button:hover .xc-sample-policy__dot { opacity: 1; transform: scale(1.12); }
.xc-sample-policy__pagination button:active .xc-sample-policy__dot { transform: scale(.95); }
.xc-sample-policy__pagination button:focus-visible { outline: 1px solid currentColor; outline-offset: 2px; }
.xc-sample-policy__tooltip {
    grid-column: 1;
    grid-row: 1;
    text-align: right;
    font: 400 17px/1.35 Georgia, 'Times New Roman', serif;
    white-space: nowrap;
    overflow-wrap: normal;
    opacity: .7;
    transition: opacity .2s;
}
.xc-sample-policy__pagination button[aria-current="step"] .xc-sample-policy__tooltip,
.xc-sample-policy__pagination button:hover .xc-sample-policy__tooltip,
.xc-sample-policy__pagination button:focus-visible .xc-sample-policy__tooltip { opacity: 1; }
.xc-sample-policy__pagination button:hover,
.xc-sample-policy__pagination button:focus-visible { color: var(--brand, #a22d6d); }
@media (max-width: 1599px) {
    .xc-sample-policy__copy h3 { margin-bottom: 14px; }
    .xc-sample-policy__description { line-height: 1.55; }
    .xc-sample-policy__number { margin-bottom: 8px; }
}
@media (max-width: 1199px) {
    .xc-sample-policy.is-enhanced .xc-sample-policy__heading { left: 40px; top: 24px; }
    .xc-sample-policy.is-enhanced .xc-sample-policy__heading h2 { font-size: 38px; }
    .xc-sample-policy.is-enhanced .xc-sample-policy__pagination { right: 28px; }
    .xc-sample-policy__rule--left { left: 20px; }
    .xc-sample-policy__rule--right { right: 20px; }
}
@media (max-width: 767px) {
    .xc-sample-policy__stage { padding: 48px 52px 48px 28px; }
    .xc-sample-policy__heading h2 { font-size: 36px; }
    .xc-sample-policy__heading .eyebrow { font-size: 11px; margin-bottom: 14px; }
    .xc-sample-policy__scene { padding: 44px 0; gap: 24px 16px; }
    .xc-sample-policy__image { aspect-ratio: 3 / 4; }
    .xc-sample-policy__image--two { width: 100%; margin-top: 70px; }
    .xc-sample-policy__scene:nth-child(even) .xc-sample-policy__image--one { margin-top: 60px; }
    .xc-sample-policy__scene:nth-child(even) .xc-sample-policy__image--two { margin-top: 0; }
    .xc-sample-policy__description { line-height: 1.65; }
    .xc-sample-policy__rule--left { left: 12px; }
    .xc-sample-policy__rule--right { right: 12px; }
    .xc-sample-policy__fee-note { padding: 48px 0; min-height: 420px; margin-top: 12px; }
    .xc-sample-policy__fee-copy h3 { font-size: 26px; }
    .xc-sample-policy__fee-copy p { font-size: 16px; line-height: 1.75; }
}
.editor-styles-wrapper .xc-sample-policy__stage { padding: 40px; }
.editor-styles-wrapper .xc-sample-policy__heading h2 { font-size: 44px; }
.editor-styles-wrapper .xc-sample-policy__scenes { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.editor-styles-wrapper .xc-sample-policy__scene { padding: 36px 0 0; gap: 20px 12px; }
.editor-styles-wrapper .xc-sample-policy__image--two { margin-top: 40px; }
.editor-styles-wrapper .xc-sample-policy__rule { display: none; }
.editor-styles-wrapper .xc-sample-policy__fee-note { min-height: 340px; margin-top: 24px; padding: 40px; }
.editor-styles-wrapper .xc-sample-policy__fee-logo { width: 320px; }
@media (prefers-reduced-motion: reduce) {
    .xc-sample-policy *, .xc-sample-policy *::before { transition: none !important; }
}

.xc-sample-policy__number { display: flex; align-items: baseline; gap: 10px; color: var(--brand, #a22d6d); }
.xc-sample-policy__number > span { font: 400 32px/1 Georgia, serif; letter-spacing: 0; }
.xc-sample-policy__number small { font: 400 12px/1.5 Arial, sans-serif; color: #81727a; }
.xc-sample-policy__tooltip { display: flex; align-items: center; gap: 10px; }
.xc-sample-policy__tooltip > span:last-child { flex: 1; }
.xc-sample-policy__nav-number { flex: 0 0 22px; font: 400 14px/1.4 Arial, sans-serif; color: var(--brand, #a22d6d); font-variant-numeric: tabular-nums; }
