
.campaign-top-banner{display:block;background:#105c48;color:#fff;text-decoration:none;border-bottom:1px solid #0b4b3b;transition:background .18s ease}
.campaign-top-banner:hover{background:#0b4b3b;color:#fff}
.campaign-top-banner:focus-visible{outline:3px solid #e8c66a;outline-offset:-5px}
.campaign-top-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-top:22px;padding-bottom:22px}
.campaign-top-copy{display:grid;gap:7px;min-width:0}
.campaign-top-label{font-size:11px;font-weight:700;letter-spacing:.12em;color:#d9ead9}
.campaign-top-offer{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 12px;font-size:clamp(24px,2.6vw,34px);line-height:1.2;font-weight:700;letter-spacing:-.03em}
.campaign-top-offer>span{white-space:nowrap}
.campaign-top-offer .campaign-plus{font-size:22px;font-weight:400;color:#d4e6d6}
.campaign-top-deadline{font-size:13px;line-height:1.6;color:#edf6ef}
.campaign-top-action{display:inline-flex;align-items:center;justify-content:center;gap:18px;flex-shrink:0;min-height:46px;padding:11px 19px;border:1px solid #c4dccc;border-radius:9px;color:#fff;font-size:14px;font-weight:600;white-space:nowrap}
.campaign-top-banner:hover .campaign-top-action{background:#ffffff12}
@media(max-width:800px){.campaign-top-inner{align-items:flex-start;flex-direction:column;gap:14px;padding-top:18px;padding-bottom:18px}.campaign-top-offer{font-size:27px;gap:4px 9px}.campaign-top-offer .campaign-plus{font-size:20px}.campaign-top-deadline{font-size:12px}.campaign-top-action{font-size:13px;padding:9px 15px;min-height:42px}}
@media(max-width:420px){.campaign-top-offer{font-size:24px}.campaign-top-label{font-size:10px;letter-spacing:.08em}}
.campaign-hero-link{flex-basis:100%;font-size:13px;font-weight:600;color:var(--green);text-decoration:underline;text-underline-offset:4px;padding-top:8px}.hero-actions{flex-wrap:wrap}
.campaign-section{background:#edf5f0;border-block:1px solid #d6e7db;padding:64px 0}.campaign-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:end}.campaign-heading h2{font-size:38px;line-height:1.22;margin-top:16px}.campaign-heading>p{max-width:460px;font-size:16px;line-height:1.8}.campaign-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}.campaign-cards article{background:#fff;border:1px solid #d6e7db;border-radius:18px;padding:26px}.campaign-number{display:block;color:var(--green);font-size:12px;letter-spacing:2px;margin-bottom:18px}.campaign-cards h3{font-size:22px;margin-bottom:12px}.campaign-cards p{font-size:14px;line-height:1.8}.campaign-cards .text-link{display:block;font-size:13px;margin-top:14px}.campaign-bottom{display:flex;align-items:center;justify-content:space-between;gap:26px;margin-top:26px;padding:25px 0 8px}.campaign-bottom strong{color:var(--ink);font-size:18px}.campaign-bottom p{font-size:13px;margin-top:5px}.campaign-terms{border-top:1px solid #caddd0;margin-top:20px;padding-top:20px}.campaign-terms summary{font-size:14px;font-weight:600;color:var(--ink);min-height:36px}.campaign-terms ul{padding-left:22px;max-width:980px;font-size:13px;line-height:1.9}.campaign-terms li+li{margin-top:9px}.campaign-expired p{margin:20px 0}.campaign-section [hidden],[data-campaign-active][hidden]{display:none!important}
@media(max-width:800px){.campaign-section{padding:40px 0}.campaign-heading{grid-template-columns:1fr;gap:20px}.campaign-heading h2{font-size:31px}.campaign-cards{grid-template-columns:1fr;gap:14px}.campaign-cards article{padding:22px}.campaign-bottom{flex-direction:column;align-items:start}.campaign-bottom .button{width:100%}.campaign-heading .eyebrow{line-height:1.7}.campaign-hero-link{line-height:1.7}}

.campaign-top-benefits{font-size:13px;line-height:1.6;color:#fff;font-weight:500}
@media(max-width:800px){.campaign-top-benefits{font-size:12px}}

/* Annual offer: show total commitment beside the free-period headline. */
.campaign-price-breakdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0}.campaign-price-breakdown>div{padding:22px;background:#fff;border:1px solid #c9ddcf;border-radius:14px;display:grid;gap:10px}.campaign-price-breakdown span{font-size:13px;color:#526f60}.campaign-price-breakdown strong{font-size:25px;color:#153e35}.campaign-renewal{padding:22px;border-left:4px solid #477965;background:#e8f2e9;border-radius:4px 12px 12px 4px}.campaign-renewal>strong{font-size:19px}.campaign-renewal p{margin:10px 0 0;line-height:1.7}@media(max-width:760px){.campaign-price-breakdown{grid-template-columns:1fr 1fr}.campaign-price-breakdown>div{padding:16px}.campaign-price-breakdown strong{font-size:21px}}@media(max-width:400px){.campaign-price-breakdown{grid-template-columns:1fr}}
