/* Home composition for Variant 2. site.css retains behavior; this sheet owns home layout. */
.pua-design-v2.pua-home-view { --v2-blue: #145fe5; --blue: #145fe5; }
.pua-design-v2 .pua-home { overflow: clip; background: #fff; }
.pua-design-v2 .pua-home .home-hero {
  padding: 44px 0 48px; text-align: left;
  background: radial-gradient(circle at 79% 45%, #194982 0, transparent 33%), linear-gradient(115deg,#071d43,#103972 76%,#092653);
}
.pua-design-v2 .pua-home .home-hero-layout { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(270px,.75fr); gap: clamp(18px,3vw,50px); align-items: center; }
.pua-design-v2 .pua-home .home-hero-copy { min-width: 0; }
.pua-design-v2 .pua-home .home-hero h1 { max-width: 750px; margin: 0 0 16px; color: #fff; font-size: clamp(34px,4.1vw,59px); line-height: 1.1; }
.pua-design-v2 .pua-home .home-hero-copy>p:not(.home-quick) { max-width: 690px; margin: 0 0 24px; color: #dceaff; font-size: clamp(15px,1.45vw,18px); }
.pua-design-v2 .pua-home .home-hero-art { display: block; width: 100%; max-width: 500px; height: auto; justify-self: center; }
.pua-design-v2 .pua-home .home-search { max-width: 700px; margin: 0; }
.pua-design-v2 .pua-home .home-search>div { display: flex; gap: 9px; }
.pua-design-v2 .pua-home .home-search input { min-width: 0; flex: 1; min-height: 52px; border: 1px solid #b7cdea; border-radius: 9px; background: #fff; padding: 10px 16px; color: var(--v2-navy); }
.pua-design-v2 .pua-home .home-search button { flex: 0 0 119px; min-height: 52px; border: 0; border-radius: 9px; background: #145fe5; color: #fff; font-weight: 700; }
.pua-design-v2 .pua-home .home-quick { display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 5px 12px; max-width: 700px; margin: 16px 0 0!important; color: #e4efff; text-align: left; }
.pua-design-v2 .pua-home .home-quick a { color: #fff; text-underline-offset: 3px; }
.pua-design-v2 .pua-home .home-section { padding-top: clamp(38px,4.5vw,66px); padding-bottom: clamp(38px,4.5vw,66px); }
.pua-design-v2 .pua-home .home-tint { background: #f5f9ff; }
.pua-design-v2 .pua-home :is(.home-section>h2,.home-section .wrap>h2,.home-feature h2,.home-prose h2) { color: var(--v2-navy); font-size: clamp(26px,2.6vw,36px); line-height: 1.2; margin: 0 0 16px; }
.pua-design-v2 .pua-home :is(.home-section>h2,.home-section .wrap>h2,.home-feature h2,.home-prose h2)::after { content: ""; display: block; width: 46px; height: 4px; margin-top: 10px; border-radius: 4px; background: var(--v2-yellow); }
.pua-design-v2 .pua-home .home-lead { max-width: 870px; margin: 0 0 25px; color: var(--v2-muted); }

/* Home cards remain distinct from brand cards. Natural height preserves all text. */
.pua-design-v2 .pua-home .home-offers { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: 1fr; gap: 14px; }
.pua-design-v2 .pua-home .offer { display: grid; grid-template-columns: 82px minmax(0,1fr) 145px; gap: 13px; align-items: start; min-width: 0; min-height: 0; margin: 0; padding: 16px; border: 1px solid var(--v2-line); border-radius: 12px; box-shadow: none; background: #fff; }
.pua-design-v2 .pua-home .offer>* { min-width: 0; }
.pua-design-v2 .pua-home .home-offer-logo a { display: grid; place-items: center; width: 82px; height: 82px; padding: 7px; border: 1px solid var(--v2-line); border-radius: 9px; background: #fff; }
.pua-design-v2 .pua-home .home-offer-logo img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.pua-design-v2 .pua-home .offer-info h2 { margin: 0 0 6px; color: var(--v2-navy); font-size: 16px; line-height: 1.3; overflow-wrap: anywhere; }
.pua-design-v2 .pua-home .offer-copy { max-height: 4.35em; overflow: hidden; color: var(--v2-muted); font-size: 13px; line-height: 1.45; }
.pua-design-v2 .pua-home .offer-copy.expanded { max-height: none; overflow: visible; }
.pua-design-v2 .pua-home .offer-cta { grid-column: auto; padding: 0; min-width: 0; }
.pua-design-v2 .pua-home .offer-cta .action { width: 100%; min-height: 48px; padding: 9px 12px; border-radius: 999px; background: #145fe5; color: #fff; font-size: 12px; line-height: 1.2; }
.pua-design-v2 .pua-home .offer-cta .action:hover { background: #004cbd; }
.pua-design-v2 .pua-home .offer-meta { display: flex; flex-wrap: wrap; align-items: start; gap: 5px; margin-top: 8px; }
.pua-design-v2 .pua-home .offer-meta .verified { margin: 0; }
.pua-design-v2 .pua-home .offer-meta .expiry { flex: 1 1 100%; margin: 0; text-align: left; }
.pua-design-v2 .pua-home .offer-cta .peel { display: flex; align-items: stretch; overflow: hidden; padding: 0; border: 1px solid #145fe5; border-radius: 999px; background: #fff; color: var(--v2-navy); }
.pua-design-v2 .pua-home .offer-cta .peel:hover { background: #fff; }
.pua-design-v2 .pua-home .peel-label { position: relative; inset: auto; z-index: 1; display: grid; place-items: center; flex: 1 1 auto; min-width: 0; min-height: 46px; padding: 5px 2px 5px 8px; border-radius: 999px 0 0 999px; background: #145fe5; color: #fff; }
.pua-design-v2 .pua-home .peel-label::after { content: ""; position: absolute; top: 0; right: -13px; width: 14px; height: 100%; background: #98c0f8; clip-path: polygon(0 0,100% 100%,0 100%); }
.pua-design-v2 .pua-home .peel-tail { position: relative; inset: auto; transform: none; display: grid; place-items: center; flex: 0 0 35px; background: #fff; color: var(--v2-navy); letter-spacing: 1px; }
.pua-design-v2 .pua-home .expand { margin-top: 5px; font-size: 12px; }

.pua-design-v2 .pua-home .home-categories { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.pua-design-v2 .pua-home .home-category,.pua-design-v2 .pua-home .home-category:has(img) { position: static; display: flex; align-items: center; justify-content: flex-start; min-width: 0; min-height: 102px; aspect-ratio: auto; gap: 12px; padding: 11px; border: 1px solid var(--v2-line); border-radius: 10px; background: #fff; color: var(--v2-navy); text-align: left; text-decoration: none; box-shadow: none; }
.pua-design-v2 .pua-home .home-category:has(img)::after { display: none; }
.pua-design-v2 .pua-home .home-category img,.pua-design-v2 .pua-home .home-category:has(img) img { position: static; display: block; flex: 0 0 78px; width: 78px; height: 78px; border-radius: 7px; object-fit: cover; }
.pua-design-v2 .pua-home .home-category span,.pua-design-v2 .pua-home .home-category:has(img) span { position: static; min-width: 0; color: var(--v2-navy); font-size: 14px; line-height: 1.3; overflow-wrap: anywhere; text-align: left; text-shadow: none; }
.pua-design-v2 .pua-home .home-link { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; margin-top: 20px; padding: 8px 20px; border: 0; border-radius: 9px; background: #145fe5; color: #fff; font-weight: 700; text-decoration: none; }

.pua-design-v2 .pua-home .home-feature { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(190px,.65fr); align-items: center; gap: clamp(20px,4vw,66px); }
.pua-design-v2 .pua-home .home-feature>div { min-width: 0; }
.pua-design-v2 .pua-home .home-feature p,.pua-design-v2 .pua-home .home-prose p { max-width: 830px; color: var(--v2-muted); font-size: 15px; line-height: 1.65; }
.pua-design-v2 .pua-home .home-feature>img,.pua-design-v2 .pua-home .home-types>img { display: block; width: min(100%,360px); max-width: 360px; max-height: 285px; height: auto; object-fit: contain; justify-self: center; background: transparent; border-radius: 0; }
.pua-design-v2 .pua-home .home-store>img { max-width: 300px; }
.pua-design-v2 .pua-home .home-benefits { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.pua-design-v2 .pua-home .home-benefits article,.pua-design-v2 .pua-home .home-type-list article { min-width: 0; padding: 18px; border: 1px solid var(--v2-line); border-radius: 10px; background: #fff; box-shadow: none; }
.pua-design-v2 .pua-home .home-benefits img { display: block; width: 74px; height: 54px; object-fit: contain; }
.pua-design-v2 .pua-home .home-benefits h3,.pua-design-v2 .pua-home .home-type-list h3 { margin: 10px 0 6px; color: var(--v2-navy); font-size: 17px; }
.pua-design-v2 .pua-home .home-benefits p,.pua-design-v2 .pua-home .home-type-list p { margin: 0; color: var(--v2-muted); font-size: 14px; line-height: 1.5; }
.pua-design-v2 .pua-home .home-types { grid-template-columns: minmax(0,1fr) minmax(180px,270px); align-items: center; }
.pua-design-v2 .pua-home .home-type-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }
.pua-design-v2 .pua-home .home-prose { max-width: 1000px; }
.pua-design-v2 .pua-home .home-empty { padding: 20px; border: 1px dashed var(--v2-line); border-radius: 10px; }

@media (max-width: 1100px) {
  .pua-design-v2 .pua-home .home-offers { grid-template-columns: 1fr; grid-auto-rows: auto; }
  .pua-design-v2 .pua-home .offer { grid-template-columns: 100px minmax(0,1fr) 180px; }
  .pua-design-v2 .pua-home .home-offer-logo a { width: 100px; height: 100px; }
  .pua-design-v2 .pua-home .home-categories { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 850px) {
  .pua-design-v2 .pua-home .home-hero-layout { grid-template-columns: minmax(0,1fr) minmax(170px,.45fr); }
  .pua-design-v2 .pua-home .home-categories { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pua-design-v2 .pua-home .home-benefits { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 700px) {
  .pua-design-v2 .pua-home .home-hero { padding: 34px 0 27px; }
  .pua-design-v2 .pua-home .home-hero-layout { grid-template-columns: 1fr; gap: 10px; }
  .pua-design-v2 .pua-home .home-hero h1 { font-size: clamp(30px,8.5vw,39px); }
  .pua-design-v2 .pua-home .home-hero-copy>p:not(.home-quick) { margin-bottom: 18px; }
  .pua-design-v2 .pua-home .home-hero-art { width: min(125%,525px); max-width: none; max-height: none; }
  .pua-design-v2 .pua-home .home-search>div { flex-direction: row; gap: 7px; }
  .pua-design-v2 .pua-home .home-search input { min-height: 48px; padding: 8px 11px; }
  .pua-design-v2 .pua-home .home-search button { flex: 0 0 85px; min-height: 48px; width: auto; padding: 8px; }
  .pua-design-v2 .pua-home .home-quick { margin-top: 12px!important; font-size: 12px; }
  .pua-design-v2 .pua-home .home-section { padding-top: 36px; padding-bottom: 36px; }
  .pua-design-v2 .pua-home .offer { grid-template-columns: 66px minmax(0,1fr); gap: 8px 12px; padding: 13px; }
  .pua-design-v2 .pua-home .home-offer-logo { grid-column: 1; grid-row: 1; }
  .pua-design-v2 .pua-home .home-offer-logo a { width: 66px; height: 66px; }
  .pua-design-v2 .pua-home .offer-info { display: contents; }
  .pua-design-v2 .pua-home .offer-info h2 { grid-column: 2; grid-row: 1; align-self: center; margin: 0; font-size: 15px; }
  .pua-design-v2 .pua-home .offer-copy { grid-column: 1/-1; grid-row: 2; max-height: 4.35em; overflow: hidden; }
  .pua-design-v2 .pua-home .offer-copy.expanded { max-height: none; overflow: visible; }
  .pua-design-v2 .pua-home .expand { grid-column: 1/-1; grid-row: 3; margin: 0; }
  .pua-design-v2 .pua-home .offer-cta { grid-column: 1/-1; grid-row: 4; padding-top: 5px; }
  .pua-design-v2 .pua-home .offer-cta .action { min-height: 48px; font-size: 14px; }
  .pua-design-v2 .pua-home .peel-tail { flex-basis: 53px; }
  .pua-design-v2 .pua-home .offer-meta .expiry { flex: 0 1 auto; margin-left: auto; text-align: right; }
  .pua-design-v2 .pua-home .home-categories { gap: 9px; }
  .pua-design-v2 .pua-home .home-category,.pua-design-v2 .pua-home .home-category:has(img) { position: relative; isolation: isolate; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; aspect-ratio: 1; min-height: 0; overflow: hidden; padding: 14px 9px; border: 0; border-radius: 15px; background: #28618b; text-align: center; }
  .pua-design-v2 .pua-home .home-category:has(img)::after { content: ""; position: absolute; inset: 0; z-index: 1; display: block; background: linear-gradient(180deg,rgba(5,23,45,.38),rgba(5,23,45,.6)); }
  .pua-design-v2 .pua-home .home-category img,.pua-design-v2 .pua-home .home-category:has(img) img { position: absolute; inset: 0; z-index: 0; display: block; width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }
  .pua-design-v2 .pua-home .home-category span,.pua-design-v2 .pua-home .home-category:has(img) span { position: relative; z-index: 2; display: block; width: 100%; color: #fff; font-size: clamp(14px,4.1vw,17px); font-weight: 700; line-height: 1.18; text-align: center; text-shadow: 0 1px 3px #05172d; overflow-wrap: anywhere; }
  .pua-design-v2 .pua-home .home-feature,.pua-design-v2 .pua-home .home-types { grid-template-columns: 1fr; gap: 12px; }
  .pua-design-v2 .pua-home .home-feature>img,.pua-design-v2 .pua-home .home-types>img { width: min(75%,250px); max-height: 190px; }
  .pua-design-v2 .pua-home .home-benefits,.pua-design-v2 .pua-home .home-type-list { grid-template-columns: 1fr; }
  .pua-design-v2 .site-footer .wrap { display: grid; grid-template-columns: 1fr; align-items: start; gap: 14px; }
  .pua-design-v2 .site-footer nav ul { display: flex; flex-wrap: wrap; gap: 8px 16px; }
  .pua-design-v2 .site-footer nav li { margin: 0; }
  .pua-design-v2 .site-footer .cookie-settings { justify-self: start; margin: 0; }
}
