*{box-sizing:border-box}
body{
  margin:0;
  font-family:'Trebuchet MS',sans-serif;
  color:#14324d;
  background:
    radial-gradient(circle at 12% -8%,#d8f2ff 0,#eaf7ff00 30%),
    radial-gradient(circle at 88% 10%,#cdeeff 0,#eaf7ff00 34%),
    #eef8ff;
}
.wrap{width:min(1280px,calc(100% - 30px));margin:auto}

.header{
  position:sticky;
  top:0;
  z-index:1200;
  background:#f3fbffed;
  border-bottom:2px solid #7cc8f2;
  backdrop-filter:blur(6px);
}
.header-inner{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.brand,.nav a{color:#14324d;text-decoration:none;font-weight:700}
.brand{display:flex;gap:10px;align-items:center}
.brand img{width:42px;height:42px;border-radius:12px;border:1px solid #7cc8f2;background:#ffffff}
.nav{display:flex;gap:10px;flex-wrap:wrap}

main,.offers,.v8-bubbles,.v6-carousel{position:relative;z-index:1}
#offers{scroll-margin-top:96px}

.hero,.offers,.content,.notice{
  margin-top:18px;
  padding:22px;
  background:linear-gradient(180deg,#ffffff 0,#f5fbff 100%);
  border:1px solid #c4e4f9;
  border-radius:18px;
  box-shadow:0 0 0 1px #e2f2fd inset;
}
.hero h1{font-size:clamp(2rem,4.4vw,3.6rem);line-height:1;color:#12314b}
.hero-kicker{color:#2b91c7;letter-spacing:.13em;font-weight:700}
.btn{
  display:inline-block;
  text-decoration:none;
  padding:10px 15px;
  border-radius:999px;
  background:#67bff0;
  color:#0f3551;
  font-weight:800;
}
.btn:hover{filter:brightness(1.05)}

.v8-bubbles{display:flex;flex-direction:column;gap:12px}
.offer{
  display:grid;
  grid-template-columns:260px 1fr 170px;
  gap:12px;
  align-items:center;
  padding:12px;
  border:1px solid #b9ddf5;
  background:#f8fcff;
  border-radius:14px;
}
.offer:after{display:none}
.offer-a,.offer-b,.offer-c,.offer-d,.offer-e{grid-column:auto;transform:none}
.offer-media{background:#e6f5ff;padding:8px;border-radius:10px;border:1px solid #b8dcf5}
.offer img{width:100%;height:108px;object-fit:contain;border-radius:8px}
.offer-a img{height:108px}
.offer-body{display:grid;gap:6px}
.offer-body h3{margin:0;font-size:1.18rem;color:#12314b}
.rating{margin:0;color:#2a8fc4;font-weight:800}
.meta{margin:0;color:#426580}
.stars{margin:0;color:#f0b94a}
.btn.small{justify-self:end;align-self:center;white-space:nowrap;border-radius:10px;background:#2a8fc4;color:#f2fbff}

.content h2,.content h3,.notice h2{color:#12314b}
.content p,.notice p{line-height:1.72;color:#355a78}

.footer{margin-top:28px;background:#dff1fd;color:#13324c}
.footer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:24px 0}
.footer a{color:#1f7fb2}
.footer-bottom{border-top:1px solid #b4d8f0;padding:12px 0 24px}
.footer-links{display:flex;gap:10px;flex-wrap:wrap}
.logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.logos img{width:100%;max-height:54px;object-fit:contain;background:#f2fbff;border:1px solid #b9ddf5;border-radius:10px;padding:6px}
.reveal{opacity:0;transform:translateY(12px);transition:.45s}
.reveal.in{opacity:1;transform:none}

@media(max-width:930px){
  .offer{grid-template-columns:1fr}
  .btn.small{justify-self:start}
  .footer-grid{grid-template-columns:1fr}
  .logos{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* patch: dark underlay for all images */
img{background:#0c1b2e;border:1px solid #2f4f70;border-radius:10px;padding:4px;}

/* patch: force dark underlay for footer trust logos */
.logos img{background:#0c1b2e !important;border:1px solid #2f4f70 !important;}
