/* Shared navigation accommodates the additional offer link. */
@media (min-width: 769px) {
  .navbar-expand-lg .navbar-nav { flex-direction: row; flex-wrap: wrap; gap: 6px 12px; }
  .top-row { padding: 24px 0; }
  .top-row .menu-cell { flex: 0 0 43%; }
  .top-row .logo-cell { flex: 0 0 17%; }
  .top-row .logo-cell img { max-width: 100%; }
  .top-row .nav-link { gap: 4px; font-size: 10px; letter-spacing: .8px; }
  .top-row .nav-link::after { width: 8px; height: 8px; }
}
.top-row .nav-link[aria-current="page"] { color: #ff7474; }
footer ul { flex-wrap: wrap; }
.fin-page { color: #242424; background: #fff; font-family: roboto, Arial, sans-serif; font-size: 16px; line-height: 1.7; }
.fin-page *, .fin-page *::before, .fin-page *::after { box-sizing: border-box; }
.fin-page .fin-wrap { width: min(1280px, 90%); margin-inline: auto; }
.fin-page .fin-section { padding: 90px 0; scroll-margin-top: 24px; }
.fin-page h1, .fin-page h2, .fin-page h3 { font-family: pennypacker-semiwide, Arial, sans-serif; color: inherit; text-transform: none; margin: 0 0 24px; line-height: 1.12; font-weight: 500; }
.fin-page h1 { font-size: clamp(38px, 4vw, 62px); letter-spacing: -1.5px; }
.fin-page h1 span { color: #b7b5b0; }
.fin-page h2 { font-size: clamp(30px, 3vw, 44px); letter-spacing: -.8px; }
.fin-page h3 { font-size: 21px; }
.fin-page p { margin: 0 0 20px; font-size: inherit; line-height: inherit; }
.fin-page .fin-eyebrow { color: #b92020; text-transform: uppercase; letter-spacing: 2px; font-size: 11px; font-weight: 700; margin-bottom: 24px; }
.fin-page .fin-lead { font-size: 19px; line-height: 1.6; }
.fin-page .fin-small { font-size: 14px; color: #686868; }
.fin-page .fin-hero { background: #171717; color: #fff; padding: 64px 0 70px; }
.fin-page .fin-hero .fin-eyebrow, .fin-page .fin-cta .fin-eyebrow { color: #ff7474; }
.fin-hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.fin-page .fin-hero-photo { margin: 0; position: relative; height: 560px; }
.fin-hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 52% center; }
.fin-hero-photo figcaption { position: absolute; bottom: 0; left: 0; padding: 40px 24px 20px; width: 100%; background: linear-gradient(transparent, rgba(0,0,0,.85)); color: #fff; font-size: 13px; }
.fin-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; margin: 32px 0 24px; }
.fin-page a.fin-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 22px; color: #fff; background: #c82020; text-decoration: none; font-size: 13px; font-weight: 700; }
.fin-page a.fin-button:hover { background: #a91b1b; }
.fin-page a.fin-text-link { color: inherit; text-underline-offset: 6px; font-size: 14px; }
.fin-page a:focus-visible, .fin-page summary:focus-visible { outline: 3px solid #e42626; outline-offset: 5px; }
.fin-page .fin-hero-note { color: #aaa; font-size: 13px; margin: 0; }
.fin-strip { background: #f2f0ec; border-bottom: 1px solid #ddd; }
.fin-strip .fin-wrap { display: grid; grid-template-columns: repeat(4,1fr); padding-block: 22px; gap: 20px; }
.fin-strip span { display: flex; align-items: center; gap: 12px; font-size: 13px; }
.fin-strip span::before { content: ''; width: 7px; height: 7px; background: #c82020; }
.fin-split { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; align-items: start; }
.fin-service { border-top: 1px solid #d7d7d7; }
.fin-service:last-child { border-bottom: 1px solid #d7d7d7; }
.fin-service summary { display: flex; align-items: center; gap: 18px; padding: 24px 0; cursor: pointer; list-style: none; }
.fin-service summary::-webkit-details-marker { display: none; }
.fin-service summary h3 { font-size: 19px; margin: 0; flex: 1; line-height: 1.35; }
.fin-number { font-size: 12px; color: #b92020; }
.fin-plus { font-size: 26px; font-weight: 300; color: #b92020; }
.fin-service[open] .fin-plus { transform: rotate(45deg); }
.fin-service-body { padding: 0 0 20px 36px; font-size: 15px; }
.fin-page ul { padding-left: 20px; margin: 0 0 24px; }
.fin-page li { margin-bottom: 7px; }
.fin-page li::marker { color: #b92020; }
.fin-two-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.fin-page .fin-large-format { background: #f2f0ec; }
.fin-tile-figure { margin: 0; padding: 36px; background: #e5e1da; }
.fin-tile-comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.fin-tiles { display: grid; aspect-ratio: 3/4; gap: 3px; background: #6b6259; padding: 3px; margin-bottom: 14px; }
.fin-tiles i { background: linear-gradient(135deg, #d1c6b6 5%, #f0eae1 48%, #d0c3b0 50%, #e8dfd0 51%, #c4b8a6 100%); }
.fin-tiles-small { grid-template-columns: repeat(4,1fr); grid-template-rows: repeat(6,1fr); }
.fin-tiles-large { grid-template-columns: repeat(2,1fr); grid-template-rows: repeat(2,1fr); }
.fin-tile-comparison b { font-size: 13px; font-weight: 500; }
.fin-tile-figure figcaption { margin-top: 24px; font-size: 13px; color: #514b43; line-height: 1.6; }
.fin-format-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.fin-format-tags span { padding: 5px 10px; border: 1px solid #a39c91; font-size: 12px; }
.fin-benefits { display: grid; grid-template-columns: repeat(4,1fr); gap: 32px; margin-top: 48px; }
.fin-benefits article { border-top: 1px solid #ccc; padding-top: 24px; }
.fin-benefits article > span { color: #b92020; font-size: 13px; display: block; margin-bottom: 24px; }
.fin-benefits p { font-size: 15px; }
.fin-page .fin-process { background: #f7f6f3; }
.fin-steps { display: grid; grid-template-columns: repeat(5,1fr); gap: 24px; padding: 0; margin: 48px 0 0; list-style: none; }
.fin-steps li { border-top: 1px solid #c5c0ba; padding-top: 24px; }
.fin-steps span { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; background: #b92020; color: #fff; font-size: 13px; margin-bottom: 24px; }
.fin-steps h3 { font-size: 19px; margin-bottom: 12px; }
.fin-steps p { font-size: 14px; }
.fin-page .fin-cta { background: #171717; color: #fff; }
.fin-cta .fin-small { color: #b7b5b0; margin-top: 20px; }
@media (max-width: 1000px) {
 .fin-hero-grid, .fin-split, .fin-two-columns { gap: 36px; }
 .fin-page .fin-hero-photo { height: 520px; }
 .fin-benefits { grid-template-columns: repeat(2,1fr); }
 .fin-steps { grid-template-columns: repeat(3,1fr); }
 #top-buttons { gap: 12px; }
}
@media (max-width: 768px) {
 .fin-page .fin-section { padding: 56px 0; }
 .fin-page .fin-hero { padding: 40px 0; }
 .fin-hero-grid, .fin-split, .fin-two-columns { grid-template-columns: 1fr; }
 .fin-page .fin-hero-photo { height: 350px; }
 .fin-strip .fin-wrap { grid-template-columns: repeat(2,1fr); gap: 12px; }
 .fin-tile-figure { padding: 24px; }
 .fin-steps { grid-template-columns: repeat(2,1fr); }
 .fin-service summary { gap: 12px; }
 .fin-service-body { padding-left: 0; }
 .fin-page h1 { letter-spacing: -1px; }
 .top-row .menu-cell { overflow-y: auto; }
}
@media (max-width: 420px) {
 .fin-benefits, .fin-steps { grid-template-columns: 1fr; }
 .fin-page a.fin-button { width: 100%; }
 .fin-page .fin-hero-photo { height: 290px; }
 .fin-tile-comparison { gap: 12px; }
}
/* Keep inherited text legible over the dark sections despite global p styles. */
.fin-page p { color: inherit; }
.fin-page .fin-hero .fin-lead, .fin-page .fin-cta p { color: #d4d2ce; }
.fin-page .fin-cta .fin-eyebrow { color: #ff7474; }
@media (min-width: 769px) {
 .navbar-expand-lg .navbar-toggler { display: none; }
}
@media (min-width: 769px) and (max-width: 991px) {
 #top-buttons .top-contact { display: none; }
 #top-buttons .btn { padding: 14px 10px; font-size: 10px; }
}
@media (max-width: 420px) {
 footer .container-fluid { padding-inline: 16px; }
}
