/* Contrast is owned here; layout and service behavior remain in renewal.css. */
.renewal-page {
  --ink:#132f3a;
  --navy:#092f3a;
  --navy-deep:#061f28;
  --teal:#0c4e59;
  --teal-dark:#073c47;
  --muted:#3c525d;
  --surface:#fff;
  --line:#adbec7;
  --booking:#0c3541;
  --action:#f1c879;
  color:var(--ink);
  background:#fff;
}
.renewal-page em { color:#0c4e59; }
.renewal-page .eyebrow { color:#0c4e59; font-weight:600; }
.renewal-page .site-header { background:#fff; border-bottom:1px solid #b6c6ce; backdrop-filter:none; }
.renewal-page .brand.brand-wordmark .brand-motto { color:#132f3a; }
.pn-announcement { background:#061f28; color:#fff; }
.pn-announcement-separator { opacity:1; color:#b4ccd4; }
.renewal-page .pn-nav-cta { background:#f1c879; color:#092f3a; border:1px solid #092f3a; font-weight:600; }
.renewal-page .pn-nav-cta:hover { background:#ffda94; }
.renewal-page .button-primary,
.renewal-page .button-light {
  background:#f1c879;
  color:#092f3a;
  border:1px solid #092f3a;
  font-weight:600;
  box-shadow:0 4px 14px #061f281a;
}
.renewal-page .button-primary:hover,
.renewal-page .button-light:hover { background:#ffda94; color:#092f3a; }
.renewal-page .button-outline { background:#fff; color:#132f3a; border-color:#516c79; }
.renewal-page :is(a,button,input,select,summary):focus-visible { outline:3px solid #a64b00; outline-offset:3px; box-shadow:0 0 0 6px #fff; }
.pn-hero-band,.pn-home-hero-band { background:#092f3a; color:#fff; }
.pn-hero-band .pn-hero-copy,.pn-home-hero-band .pn-home-intro { color:#fff; }
.pn-hero-band h1,.pn-home-hero-band h1 { color:#fff; }
.pn-hero-band h1 em,.pn-home-hero-band h1 em { color:#99e7d4; }
.pn-hero-band .eyebrow,.pn-home-hero-band .eyebrow { color:#99e7d4; }
.pn-hero-band .pn-hero-intro,.pn-home-hero-band .pn-home-intro>p,
.pn-hero-band .pn-hero-reassurance,.pn-hero-band .pn-hero-pricing>span,
.pn-hero-band .pn-hero-pricing small { color:#e4eff3; }
.pn-hero-band .pn-hero-pricing>strong { color:#fff; }
.pn-hero-band .pn-hero-pricing>span { border-color:#7999a5; }
.pn-hero-band .pn-trust-strip { color:#e4eff3; border-color:#648692; }
.pn-hero-band .pn-trust-strip .icon { color:#99e7d4; }
.pn-hero-band .pn-hero { padding-block:54px 40px; }
.pn-hero-band { padding-bottom:0; }
.pn-hero-visual { background:#dbe4e8; border:1px solid #8aa1ac; box-shadow:0 15px 34px #061f2826; }
.pn-image-caption { background:#fff; color:#132f3a; border-color:#b5c6ce; backdrop-filter:none; }
.pn-image-caption small,.pn-caption-mark { color:#3c525d; }
.pn-image-note { background:#fff; color:#132f3a; border:1px solid #6f8793; }
.pn-comparison>figcaption { background:#fff; color:#344c58; border-color:#adbec7; }
.pn-comparison-label { backdrop-filter:none; }
.pn-comparison-label.is-before { background:#fff; color:#132f3a; border:1px solid #4e6875; }
.pn-comparison-label.is-after { background:#092f3a; color:#fff; border:1px solid #fff; }
.pn-comparison-label small { color:inherit; }
.pn-why-intro>p,.pn-why-content li p,.pn-evidence,
.pn-section-title>p,.pn-included-grid p,.pn-scope-note,
.pn-faq details p,.pn-home-bottom p { color:#3c525d; }
.pn-why-number,.pn-step-number { color:#45616d; }
.pn-why-content h3,.pn-faq summary,.pn-section-title h2 { color:#132f3a; }
.pn-why-takeaway { background:#e3edf1; color:#132f3a; border-color:#0c4e59; }
.pn-why-content>ol>li,.pn-scope-note,.pn-faq details { border-color:#adbec7; }
.pn-included-grid article { border-color:#617e8b; }
.pn-booking { background:#0c3541; border-block:1px solid #061f28; }
.pn-booking-intro { color:#fff; }
.pn-booking-intro .eyebrow { color:#99e7d4; }
.pn-booking-intro>p,.pn-booking-intro .pn-promise span { color:#e4eff3; }
.pn-booking-intro .pn-promise strong,.pn-booking-intro .pn-promise>.icon { color:#fff; }
.pn-offer { border-color:#7999a5; color:#fff; }
.pn-offer p,.pn-offer small { color:#e4eff3; }
.pn-booking-form { background:#fff; color:#132f3a; padding:30px; border:1px solid #819ba7; border-radius:12px; box-shadow:0 18px 42px #061f2833; }
.renewal-page .pn-primary { padding:0 0 24px; background:#fff; border:0; border-bottom:1px solid #9db2bd; border-radius:0; box-shadow:none; }
.pn-service-icon { background:#dceaf0; color:#092f3a; }
.pn-card-kicker,.pn-service-heading p,.pn-quantity-label,.pn-car-spec { color:#3c525d; }
.renewal-page .price strong { color:#132f3a; }
.renewal-page .price-reference,.renewal-page .price-caption { color:#3c525d; }
.renewal-page .price-saving,.renewal-page .car-plan-saving,.renewal-page .quote-discount strong { color:#075249; }
.renewal-page .quantity-tier { background:#e3edf1; color:#0c4e59; }
.renewal-page .pn-service .quantity { background:#fff; border:1px solid #617e8b; }
.renewal-page .pn-service .quantity .quantity-add { background:#0c4e59; color:#fff; }
.renewal-page .pn-service .quantity .quantity-add:hover:not(:disabled) { background:#073c47; }
.renewal-page .pn-service .quantity .quantity-remove { background:#e3edf1; color:#132f3a; }
.renewal-page .pn-service .quantity output { background:#fff; color:#132f3a; }
.renewal-page .pn-service .quantity button:disabled { opacity:1; background:#edf2f4; color:#4e636e; }
.pn-cross-sell { background:#edf3f6; color:#132f3a; border-color:#718c99; }
.pn-cross-sell>summary { border-color:#9eb4c0; }
.pn-cross-sell>summary small,.pn-cross-content>p,.pn-cross-content>small { color:#3c525d; }
.pn-addon-choices button { background:#fff; color:#132f3a; border-color:#617e8b; }
.renewal-page .pn-addon { background:#fff; color:#132f3a; border-color:#718c99; }
.pn-remove-addon { color:#8b2630; }
.renewal-page .car-plan { background:#fff; color:#132f3a; border-color:#718c99; }
.renewal-page .car-plan:has(:checked) { background:#e3edf1; border-color:#0c4e59; box-shadow:inset 0 0 0 1px #0c4e59; }
.renewal-page .car-plan small,.renewal-page .recurring-choice small { color:#3c525d; }
.renewal-page .recurring-choice { color:#132f3a; }
.renewal-page .quote-label,.renewal-page .quote-selection,.renewal-page .quote-action>span,
.renewal-page .quote-safe,.renewal-page .estimate-note,.renewal-page .quote-discount { color:#3c525d; }
.renewal-page .quote-discount>span,.renewal-page .quote-discount s { color:#3c525d; }
.renewal-page .quote-selection,.renewal-page .quote-safe,.renewal-page .estimate-note { font-size:12px; }
.renewal-page .quote-dock.is-fixed { background:#fff; color:#132f3a; border-top:2px solid #0c4e59; backdrop-filter:none; box-shadow:0 -6px 28px #061f2826; }
.pn-process { background:#dce8ee; color:#132f3a; border-block:1px solid #adbec7; }
.pn-process li { border-color:#9bb3c0; }
.pn-process li>span,.pn-process li p { color:#3c525d; }
.pn-final { background:#061f28; color:#fff; border:1px solid #244a59; }
.renewal-page .pn-final .eyebrow,.pn-final>p { color:#e4eff3; }
.pn-final h2 { color:#fff; }
.pn-final>p a { color:#fff; text-decoration:underline; text-underline-offset:3px; }
.pn-footer { color:#132f3a; }
.pn-footer-main>p,.renewal-page .footer-bottom { color:#3c525d; }
.renewal-page .footer-bottom { border-color:#adbec7; }
.renewal-page .floating-call { background:#092f3a; color:#fff; border:1px solid #fff; }
.renewal-page .toast { background:#092f3a; color:#fff; }
.home-page { background:#e6eef2; }
.pn-home-hero-band .pn-home-intro { padding-block:54px 48px; }
.pn-home-services { padding-block:32px 38px; }
.pn-home-service { padding:0 0 22px; background:#fff; border:1px solid #9db2bd; border-radius:10px; overflow:hidden; box-shadow:0 7px 18px #092f3a0d; }
.pn-home-service:hover { border-color:#0c4e59; box-shadow:0 10px 24px #092f3a1c; }
.pn-home-photo { border-radius:0; }
.pn-home-card-copy { padding-inline:18px; }
.pn-home-card-copy h2 { font-size:27px; color:#132f3a; }
.pn-home-card-copy>span,.pn-home-card-copy>p,.pn-home-price>span { color:#3c525d; }
.pn-home-price b { color:#0c4e59; font-weight:600; }
.pn-home-number { background:#fff; color:#132f3a; border:1px solid #617e8b; }
.home-page main>.pn-trust-strip { background:#092f3a; color:#fff; border:1px solid #092f3a; border-radius:8px; padding-inline:22px; }
.home-page main>.pn-trust-strip .icon { color:#99e7d4; }
.pn-home-bottom em { color:#0c4e59; }
.renewal-page dialog { background:#fff; color:#132f3a; border:1px solid #607e8c; }
.renewal-page dialog::backdrop { background:#061f28c9; }
.renewal-page .lead-estimate { background:#e3edf1; color:#132f3a; border-color:#718c99; }
.renewal-page .lead-estimate :is(p,span,small),.renewal-page #lead-recurring-note { color:#3c525d; }
.renewal-page dialog input:not([type="checkbox"]):not([type="radio"]),.renewal-page dialog select { background:#fff; color:#132f3a; border-color:#617e8b; }
.renewal-page dialog input::placeholder { color:#4e636e; opacity:1; }
.renewal-page :is(.input-hint,.privacy-copy,.contact-safe,.availability-details>p) { color:#3c525d; }
.renewal-page .availability-details summary,.renewal-page .availability-details summary>span { color:#3c525d; }
.renewal-page .calendar button { color:#132f3a; }
.renewal-page .calendar button:disabled { opacity:1; color:#4e636e; background:#edf2f4; }
.renewal-page .calendar button[aria-pressed="true"] { color:#fff; background:#0c4e59; }
.renewal-page .dialog-close { background:#e3edf1; color:#132f3a; }
.renewal-page .city-results { background:#fff; color:#132f3a; border-color:#617e8b; }
.renewal-page .city-option[aria-selected="true"],.renewal-page .city-option:hover { background:#dcebe9; color:#132f3a; }
.renewal-page .field-error { color:#a32b36; }
.renewal-page .success-summary { background:#e3edf1; color:#132f3a; border-color:#718c99; }
.renewal-page .demo-notice { background:#fff1d6; color:#523b11; border-color:#866321; }
.renewal-page .content-dialog :is(p,li) { color:#344c58; }
@media(max-width:1000px) {
  .pn-booking-form { padding:24px; }
  .pn-home-card-copy { padding-inline:14px; }
  .pn-home-card-copy h2 { font-size:24px; }
}
@media(max-width:760px) {
  .pn-hero-band .pn-hero { padding-block:30px 25px; }
  .pn-home-hero-band .pn-home-intro { padding-block:34px 31px; }
  .pn-booking-form { padding:20px; border-radius:10px; }
  .pn-booking-intro h2 { color:#fff; }
  .renewal-page .pn-primary { padding:0 0 20px; }
  .pn-booking-intro .pn-offer { margin-bottom:23px; }
  .pn-booking-form .quote-values { display:block; }
  .pn-booking-form .quote-discount { margin-top:10px; flex-direction:row; align-items:center; flex-wrap:wrap; gap:7px 14px; text-align:start; }
  .pn-booking-form .quote-selection { overflow-wrap:anywhere; }
  .pn-home-services { padding-block:24px 5px; }
  .pn-home-service { margin-bottom:24px; }
  .pn-home-card-copy { padding-inline:18px; }
  .pn-home-card-copy h2 { font-size:28px; }
  .home-page main>.pn-trust-strip { padding-inline:16px; }
}
@media(max-width:360px) {
  .pn-booking-form { padding:16px; }
  .pn-cross-content { padding:10px; }
  .renewal-page .pn-addon { padding:12px; }
  .pn-product-row>div:last-child { display:block; }
  .pn-product-row .pn-quantity-label { margin-bottom:6px; }
}
