@import url("https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@700&display=swap");
*{box-sizing:border-box} :root{--navy:#06274e;--cyan:#31c6e9;--orange:#f96b08}body{margin:0;color:var(--navy);font:18px/1.55 Helvetica,Arial,sans-serif;background:white}a{color:inherit}header{background:#053972;color:white}.wrap{max-width:1180px;margin:auto;padding:0 32px}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:10px;padding-bottom:10px}.logo{width:390px;max-width:55%;height:auto}.logo-link{display:block;width:390px;max-width:55%}.logo-link .logo{display:block;width:100%;max-width:100%}.phone{text-decoration:none;font-size:25px;font-weight:700;white-space:nowrap}.hero{background:var(--navy);color:white}.hero-grid{display:grid;grid-template-columns:1fr 1fr}.hero-copy{padding:40px 44px 40px 0;align-self:center}.eyebrow{text-transform:uppercase;font-size:16px;letter-spacing:3px;color:var(--cyan);font-weight:bold;margin:0 0 16px}h1,h2,h3,h4,h5,h6{font-family:"Roboto Slab",Georgia,serif}h1,h2{line-height:1.12;margin:0 0 24px}h1{font-size:clamp(38px,4vw,58px)}h2{font-size:clamp(30px,3vw,42px)}.sub{font-size:23px;color:var(--cyan);font-weight:700}.offer{font-size:34px;font-weight:700;line-height:1.2;margin:20px 0 12px}.qualifier{font-size:17px;max-width:460px}.call{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--orange);color:white;padding:17px 25px;border-radius:9px;text-decoration:none;font-weight:700;font-size:21px;min-height:58px;text-align:center;transition:background-color 0.3s ease}.call:hover{background:#d95300}.call:focus-visible,.phone:focus-visible,a:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}.helper{font-size:16px;margin:14px 0 0}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center}.steps{text-align:center;padding:30px 0 66px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:40px}.step{padding:0 24px}.step+.step{border-left:1px solid #d4dce5}.number{display:grid;place-items:center;background:var(--cyan);border-radius:50%;height:48px;width:48px;margin:0 auto 20px;font-weight:bold;font-size:25px}.step h3{font-size:21px;line-height:1.35;margin:0}.closing{background:var(--navy);color:white;text-align:center;padding:52px 24px}.closing h2{max-width:900px;margin:0 auto 26px}.terms{font-size:14px;margin:22px auto 0;max-width:850px}.footer{text-align:center;padding:26px 24px;font-size:15px}.footer p{margin:8px 0}.mobile-call{display:none}.skip{position:absolute;top:-100px}.skip:focus{top:10px;background:white;color:#06274e;padding:10px;z-index:5}@media(max-width:760px){body{padding-bottom:84px}.wrap{padding-left:22px;padding-right:22px}.header{flex-direction:column;gap:14px}.logo{max-width:100%;width:330px}.logo-link{width:330px;max-width:100%}.phone{font-size:22px}.hero-grid{display:flex;flex-direction:column}.hero-copy{padding:40px 0}.hero-photo{height:290px;object-position:center}.offer{font-size:31px}.call{width:100%;font-size:19px;padding:16px 12px}.steps{padding:30px 22px 42px}.step-grid{grid-template-columns:1fr;gap:24px;margin-top:28px}.step{display:flex;align-items:center;gap:18px;text-align:left;padding:0}.step+.step{border:0}.number{flex:0 0 44px;width:44px;height:44px;margin:0}.closing{padding:40px 22px}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;padding:10px 16px;background:var(--navy);box-shadow:0 -2px 12px #0002;z-index:10}.footer a{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

.campaign-index { padding-bottom: 0; }
.campaign-header { justify-content: center; padding-top: 10px; padding-bottom: 10px; }
.campaign-header .logo { max-width: 100%; }
.campaign-previews { padding-top: 30px; padding-bottom: 66px; text-align: center; }
.campaign-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: start; margin-top: 40px; }
.campaign-grid h2 { font-size: 24px; line-height: 1.3; margin: 0 0 16px; }
.campaign-grid a { display: block; box-shadow: 0 2px 12px #06274e18; transition: box-shadow 0.3s ease; }
.campaign-grid a:hover { box-shadow: 0 8px 28px #06274e30; }
.campaign-grid img { display: block; width: 100%; height: auto; }
@media (max-width: 760px) {
    .campaign-previews { padding-top: 30px; padding-bottom: 42px; }
    .campaign-grid { grid-template-columns: 1fr; gap: 28px; max-width: 480px; margin: 28px auto 0; }
}
