.campaignHero{position:relative;isolation:isolate;overflow:hidden;background:#19394b;padding:62px 0 58px}
.campaignHeroPhoto{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 55%}
.campaignHero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,19,33,.95),rgba(5,19,33,.73) 55%,rgba(5,19,33,.24))}
.campaignHero h1{font-size:clamp(54px,6.8vw,88px);line-height:1.02;max-width:800px;margin:18px 0 23px}
.campaignHero h1 em{font-weight:400;color:var(--gold2)}
.campaignHero .lede{max-width:610px;color:#dce7ef;font-size:18px}
.campaignHeroActions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 23px;margin-top:27px}
.campaignHeroActions .btn{font-size:14px;min-height:50px}.campaignGuideLink{display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:underline;text-underline-offset:5px;font-size:14px}
.campaignHero .affiliateNote{font-size:12px;color:#ccdbe5;max-width:620px;margin:21px 0 0}.campaignHero .affiliateNote a{color:#f4d58c}
.campaignSection{padding:58px 0}.campaignSection h2{font-family:Georgia,serif;font-size:clamp(37px,4.3vw,55px);line-height:1.1;margin:10px 0 18px}
.campaignSectionIntro{max-width:700px;color:#bfcedb;font-size:16px;line-height:1.75;margin:0 0 27px}
.campaignSteps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0;padding:0}
.campaignSteps li{border-top:1px solid rgba(245,217,141,.36);padding-top:17px;min-width:0}.campaignStepNumber{color:var(--gold2);font-size:11px;letter-spacing:.08em}
.campaignSteps h3{font-size:18px;margin:12px 0 7px}.campaignSteps p{color:#bfcedb;font-size:14px;line-height:1.75;margin:0}
.campaignStaySection{background:rgba(18,44,64,.45);border-block:1px solid var(--line)}
.campaignStayGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.campaignStay{display:flex;flex-direction:column;padding:28px;border:1px solid var(--line);border-radius:23px;background:linear-gradient(145deg,#132d44,#0b1f32);min-width:0}
.campaignStay .kicker{font-size:10px}.campaignStay h3{font-family:Georgia,serif;font-size:31px;line-height:1.12;margin:15px 0;font-weight:400}.campaignStay p{font-size:14px;line-height:1.75;color:#c4d2de;margin:0 0 20px}
.campaignStayActions{margin-top:auto;display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px}.campaignStayActions .btn{font-size:13px}.campaignStayActions .textLink{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
.campaignStayNote{color:#acbece;font-size:12px;line-height:1.7;margin:20px 0 0}
.campaignExtras{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
.campaignExtras>div{min-width:0}.campaignExtras h2{font-size:37px}.campaignExtras p{color:#bfcedb;font-size:14px;line-height:1.75}
.campaignExtras .btn{font-size:13px;margin-top:8px}.campaignFaq{border-top:1px solid var(--line)}
.campaignFaq details{border-bottom:1px solid var(--line);padding:0 2px}.campaignFaq summary{cursor:pointer;min-height:52px;padding:15px 0;font-size:14px;font-weight:600;line-height:1.5;color:#e9f0f5}.campaignFaq summary:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}.campaignFaq details p{padding-bottom:10px;margin-top:0}
.campaignBottom{padding:0 0 58px}.campaignBottom .ctaBox{padding:35px 38px}.campaignBottom h2{font-size:clamp(34px,4vw,49px)}.campaignBottom .btn{font-size:14px}
@media(max-width:760px){.campaignHero{padding:42px 0}.campaignHero h1{font-size:clamp(44px,11.5vw,65px)}.campaignHero .lede{font-size:16px}.campaignSection{padding:40px 0}.campaignSteps,.campaignStayGrid,.campaignExtras{grid-template-columns:1fr}.campaignSteps{gap:23px}.campaignStayGrid{gap:13px}.campaignStay{padding:24px 21px}.campaignStay h3{font-size:29px}.campaignStayActions .btn{width:100%}.campaignStayActions .textLink{justify-content:center;width:100%}.campaignHeroActions{gap:10px 17px;margin-top:23px}.campaignHeroActions .btn{width:100%;font-size:14px}.campaignGuideLink{font-size:13px}.campaignHero .affiliateNote{font-size:11px}.campaignSectionIntro{font-size:14px}.campaignExtras{gap:31px}.campaignBottom{padding-bottom:39px}.campaignBottom .ctaBox{padding:29px 23px}.campaignBottom .btn{width:100%}}
