@font-face { font-family: "QQPOO Oswald"; src: url("assets/custom-oswald-500.ttf") format("truetype"); font-weight: 500; font-display: swap; }
.cd-page { --cd-orange: #ff8900; padding-top: var(--header-height); color: #080808; background: #fff; font-family: Georgia, "Times New Roman", serif; }
.cd-container { width: min(1440px, 88%); margin-inline: auto; }
.cd-page h1, .cd-page h2, .cd-page h3 { color: inherit; margin: 0; }
.cd-page h1, .cd-page h2, .cd-price-grid h3 { font-family: "QQPOO Oswald", Impact, sans-serif; font-weight: 500; text-transform: uppercase; line-height: 1.25; letter-spacing: -.025em; }
.cd-page h1 { font-size: clamp(32px, 3vw, 56px); }
.cd-page h2 { font-size: clamp(27px, 2.1vw, 40px); }
.cd-page p { margin: 16px 0; line-height: 1.5; }
.cd-page h3 { font-family: Arial, sans-serif; font-size: 18px; text-transform: uppercase; line-height: 1.3; }
.cd-actions { display: flex; flex-wrap: wrap; gap: 16px; }
.cd-button { display: inline-flex; justify-content: center; align-items: center; min-height: 52px; padding: 16px 30px; min-width: 216px; background: var(--cd-orange); color: #fff; font: 500 14px/1.3 "QQPOO Oswald", sans-serif; text-align: center; text-transform: uppercase; border: 1px solid var(--cd-orange); transition: background .2s; }
.cd-button:hover { background: #d77100; border-color: #d77100; }
.cd-button--outline { background: transparent; border-color: #fff; }
.cd-page a:focus-visible, .cd-page summary:focus-visible { outline: 3px solid #005ab5; outline-offset: 4px; }
.cd-media { position: relative; min-width: 0; margin: 0; overflow: hidden; }
.cd-photo { width: 100%; height: 100%; object-fit: cover; }
.cd-media .cd-watermark { position: absolute; z-index: 3; right: 16px; bottom: 16px; width: clamp(65px, 8vw, 115px); height: auto; object-fit: contain; filter: grayscale(1) brightness(0) invert(1) drop-shadow(0 1px 2px #000) drop-shadow(0 0 1px #000); opacity: .9; pointer-events: none; }
.cd-media .cd-watermark--left { right: calc(50% + 16px); }
.cd-hero, .cd-banner { position: relative; isolation: isolate; color: #fff; }
.cd-backdrop { position: absolute; inset: 0; z-index: -2; }
.cd-hero::before, .cd-banner::before { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(0,0,0,.45); pointer-events: none; }
.cd-hero { min-height: 520px; display: flex; align-items: center; }
.cd-hero .cd-photo { object-position: center 60%; }
.cd-hero-copy { padding-block: 80px; }
.cd-hero h1 { max-width: 700px; }
.cd-hero p { max-width: 600px; margin-block: 24px; font-size: 18px; }
.cd-why { background: #f2f2f2; padding: 60px 0 30px; text-align: center; }
.cd-benefits { display: grid; grid-template-columns: repeat(3,1fr); gap: 54px; margin: 48px 0 76px; }
.cd-benefits img { width: 54px; height: 54px; margin: 0 auto 18px; stroke-width: 1; }
.cd-benefits p { max-width: 395px; margin: 14px auto 0; font-size: 14px; }
.cd-why .cd-actions { justify-content: center; }
.cd-how { padding-top: 64px; }
.cd-how > h2 { font-size: 28px; padding: 0 18px 10px; }
.cd-step { display: grid; grid-template-columns: 1fr 1fr; min-height: 380px; }
.cd-step > .cd-media { min-height: 380px; width: 100%; align-self: stretch; }
.cd-step > .cd-media .cd-photo { position: absolute; inset: 0; }
.cd-step--reverse > .cd-media { order: 2; }
.cd-step-copy { position: relative; display: flex; align-items: center; padding: 80px 24px 30px; }
.cd-step--reverse .cd-step-copy { text-align: right; justify-content: flex-end; }
.cd-badge { display: inline-block; padding: 4px 6px; background: var(--cd-orange); color: #fff; border-radius: 10px; }
.cd-step-copy > .cd-badge { position: absolute; top: 24px; left: 24px; font: 16px/1.2 Arial,sans-serif; border-radius: 6px; padding: 3px 5px; }
.cd-step--reverse .cd-step-copy > .cd-badge { left: auto; right: 24px; }
.cd-step-body { max-width: 375px; }
.cd-step-body h3 { font-size: 16px; margin: 0 0 10px; }
.cd-step-body p { font-size: 14px; margin: 0 0 14px; }
.cd-step-body p:last-child { margin-bottom: 0; }
.cd-fees { padding-block: 58px; }
.cd-fee-row + .cd-fee-row { margin-top: 54px; }
.cd-fee-row > h2 { font: 24px/1.2 Arial,sans-serif; text-transform: uppercase; letter-spacing: 0; }
.cd-coverage { margin: 34px 0 20px; aspect-ratio: 4.8 / 1; }
.cd-coverage .cd-photo { object-fit: cover; }
.cd-price-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; text-align: center; }
.cd-price-grid h3 { font: 500 clamp(21px,1.6vw,30px)/1.25 "QQPOO Oswald", sans-serif; }
.cd-price-grid p { font-size: 14px; margin-bottom: 0; }
.cd-banner-copy { position: relative; padding-block: 38px 60px; }
.cd-banner-copy h2 { max-width: 650px; margin-bottom: 30px; }
.cd-banner-copy p { margin-block: 16px; font-weight: 500; }
.cd-banner-copy .cd-button { min-width: 288px; }
.cd-banner .cd-photo { object-position: center; }
.cd-stories { padding-top: 40px; }
.cd-fit { display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; gap: 32px; }
.cd-fit .cd-media { aspect-ratio: 1; border-radius: 10px; }
.cd-stories h2 { font-size: clamp(23px,1.7vw,30px); }
.cd-stories p { font-size: 18px; }
.cd-lifestyle { margin-top: 100px; }
.cd-lifestyle > h2 { max-width: 520px; margin-bottom: 16px; }
.cd-lifestyle-grid { display: grid; grid-template-columns: 1fr 2fr; gap: 24px; align-items: center; }
.cd-lifestyle-grid > p { text-align: right; }
.cd-lifestyle-grid > .cd-media { aspect-ratio: 2; }
.cd-refresh { margin-top: 42px; }
.cd-refresh > h2 { text-align: right; margin-bottom: 40px; }
.cd-refresh-grid { display: grid; grid-template-columns: 2fr 1fr; align-items: center; gap: 16px; }
.cd-refresh-grid .cd-media { aspect-ratio: 2; }
.cd-reward { text-align: center; padding-block: 80px 86px; }
.cd-reward p { max-width: 570px; margin: 24px auto 0; }
.cd-faq h2 { margin-bottom: 40px; }
.cd-faq-list details { border-top: 1px solid #ddd; }
.cd-faq-list details:last-child { border-bottom: 1px solid #ddd; }
.cd-faq-list summary { padding: 11px 20px 11px 0; cursor: pointer; text-transform: uppercase; font: 17px/1.3 Arial,sans-serif; }
.cd-faq-list details p { max-width: 480px; font-size: 14px; margin: 12px 0; }
.cd-contact { padding-block: 100px 45px; display: grid; grid-template-columns: 1.8fr 1fr 1fr; gap: 16px; align-items: center; scroll-margin-top: 100px; }
.cd-contact .cd-button { min-width: 0; }
.cd-notes { padding-bottom: 30px; color: #666; font: 12px/1.5 Arial,sans-serif; }
@media (max-width: 1000px) {
  .cd-benefits { gap: 25px; }
  .cd-fit { gap: 18px; }
  .cd-step-body { max-width: 100%; }
  .cd-contact { grid-template-columns: 1fr 1fr; }
  .cd-contact h2 { grid-column: 1 / -1; }
}
@media (max-width: 680px) {
  .cd-container { width: calc(100% - 32px); }
  .cd-hero { min-height: 450px; }
  .cd-hero-copy { padding-block: 48px; }
  .cd-hero h1 { font-size: 34px; }
  .cd-hero p { font-size: 16px; }
  .cd-actions { gap: 12px; }
  .cd-button { min-width: 0; padding-inline: 20px; }
  .cd-why { padding-top: 42px; }
  .cd-benefits { grid-template-columns: 1fr; gap: 35px; margin: 34px 0; }
  .cd-why .cd-actions > a { flex: 1 1 100%; }
  .cd-how { padding-top: 40px; }
  .cd-step { grid-template-columns: 1fr; }
  .cd-step > .cd-media { min-height: 0; aspect-ratio: 1.5; }
  .cd-step--reverse > .cd-media { order: 0; }
  .cd-step-copy, .cd-step--reverse .cd-step-copy { text-align: left; justify-content: flex-start; padding: 72px 20px 35px; }
  .cd-step--reverse .cd-step-copy > .cd-badge { left: 20px; right: auto; }
  .cd-step-body { max-width: none; }
  .cd-fees { padding-block: 35px; }
  .cd-coverage { aspect-ratio: 3; margin: 20px 0; }
  .cd-coverage .cd-photo { object-fit: contain; }
  .cd-price-grid { gap: 10px; }
  .cd-price-grid h3 { font-size: 16px; overflow-wrap: anywhere; }
  .cd-price-grid p { font-size: 12px; }
  .cd-coverage .cd-watermark { width: 48px; right: 4px; bottom: 2px; }
  .cd-fit { grid-template-columns: 1fr 1fr; gap: 14px; }
  .cd-fit > div { grid-column: 1 / -1; margin-top: 14px; }
  .cd-lifestyle { margin-top: 42px; }
  .cd-lifestyle-grid, .cd-refresh-grid { grid-template-columns: 1fr; }
  .cd-lifestyle-grid > p { text-align: left; }
  .cd-refresh > h2 { text-align: left; margin-bottom: 22px; }
  .cd-reward { padding-block: 50px; }
  .cd-contact { padding-top: 50px; grid-template-columns: 1fr; }
  .cd-stories p { font-size: 16px; }
  .cd-faq-list summary { font-size: 15px; }
  .cd-banner-copy .cd-button { min-width: 0; width: 100%; }
}
