
/* V84 public campaign system */
.campaign-slot{--camp-teal:#058ea0;--camp-orange:#ff5a0a;--camp-yellow:#ffbd00;position:relative;width:min(1400px,calc(100% - 36px));margin:28px auto;display:grid;grid-template-columns:minmax(240px,.9fr) minmax(0,1.1fr);gap:0;border-radius:26px;overflow:hidden;background:#fff;color:#0b1620;box-shadow:0 18px 50px rgba(4,20,29,.14);border:1px solid rgba(5,142,160,.16)}.campaign-slot .campaign-media{min-height:280px;background:#f4f8fa;display:grid;place-items:center}.campaign-slot .campaign-media picture,.campaign-slot .campaign-media img{width:100%;height:100%;display:block}.campaign-slot .campaign-media img{object-fit:contain;max-height:520px}.campaign-slot .campaign-copy{padding:clamp(22px,4vw,54px);display:flex;flex-direction:column;justify-content:center}.campaign-kicker{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.campaign-kicker span{background:var(--camp-orange);color:#fff;font-weight:900;padding:6px 10px;border-radius:999px;font-size:12px;letter-spacing:.07em}.campaign-kicker b{color:var(--camp-teal);font-size:12px;letter-spacing:.06em}.campaign-copy h2{font-size:clamp(30px,4vw,62px);line-height:.96;margin:14px 0 10px;color:#07131c}.campaign-copy>p{font-size:clamp(16px,1.4vw,20px);line-height:1.5;color:#46535d;margin:6px 0}.campaign-subheadline{font-weight:800;color:#058ea0!important}.campaign-offer-line{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0}.campaign-offer-line del{color:#7e8a91}.campaign-offer-line>strong{font-size:28px;color:#ff4d00}.campaign-offer-line>span{padding:7px 10px;border:1px dashed #ff5a0a;border-radius:8px}.campaign-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.campaign-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;background:linear-gradient(90deg,#ffbd00,#ff8c00);color:#06131b!important;text-decoration:none;font-weight:950;box-shadow:0 8px 20px rgba(255,157,0,.25)}.campaign-btn.secondary{background:#eaf5f7;box-shadow:none;color:#075a67!important;border:1px solid #b8dfe4}.campaign-contact{margin-top:14px;color:#66757e}.campaign-contact a{color:#075e6b}.campaign-countdown{margin-top:15px;padding:12px;border-radius:14px;background:#071720;color:#fff;max-width:560px}.campaign-countdown>small{display:block;color:#7adbe7;font-weight:900;font-size:11px;letter-spacing:.11em;margin-bottom:7px}.campaign-countdown>div{display:flex;align-items:center;gap:7px}.campaign-countdown span{display:grid;text-align:center;min-width:54px}.campaign-countdown b{font-variant-numeric:tabular-nums;font-size:22px}.campaign-countdown em{font-style:normal;font-size:8px;color:#9bb3bc}.campaign-countdown i{font-style:normal;color:#ff9b21;font-weight:900}
.campaign-inline{grid-template-columns:minmax(220px,.72fr) 1.28fr;max-width:1260px}.campaign-inline .campaign-media{min-height:230px}.campaign-inline .campaign-copy{padding:28px}.campaign-inline .campaign-copy h2{font-size:clamp(26px,3vw,46px)}.campaign-compact{grid-template-columns:220px 1fr;width:min(1180px,calc(100% - 36px));margin:26px auto}.campaign-compact .campaign-media{min-height:180px}.campaign-compact .campaign-copy{padding:22px}.campaign-compact .campaign-copy h2{font-size:clamp(24px,2.7vw,40px)}
.campaign-announcement{width:100%;max-width:none;margin:0;border-radius:0;display:block;background:#06151d;color:#fff;border:0;box-shadow:none}.campaign-announcement-link{display:flex;justify-content:center;gap:14px;align-items:center;padding:9px 18px;color:#fff;text-decoration:none;min-height:42px}.campaign-announcement-link strong{color:#ffbd00}.campaign-announcement-link span{color:#d4e4ea}.campaign-announcement-link b{color:#65d7e4}
.campaign-legacy-grid .campaign-legacy-card>img{width:100%;aspect-ratio:16/8;object-fit:contain;background:#fff;border-radius:14px;margin-bottom:12px}.campaign-legacy-card .campaign-countdown{font-size:12px}
.campaign-floating{position:fixed;right:18px;bottom:94px;z-index:70;width:min(330px,calc(100vw - 36px));padding:15px 42px 15px 16px;border-radius:16px;background:#06161e;color:#fff;box-shadow:0 16px 44px rgba(0,0,0,.3);border:1px solid rgba(101,215,228,.35);display:grid;gap:4px}.campaign-floating small{color:#ffbd00;font-weight:900}.campaign-floating strong{font-size:17px}.campaign-floating a{color:#70dce7}.campaign-floating-close{position:absolute;right:8px;top:8px;border:0;background:transparent;color:#fff;font-size:24px;cursor:pointer}
.campaign-modal{position:fixed;inset:0;z-index:200;display:none;place-items:center;padding:18px}.campaign-modal.is-open{display:grid}.campaign-modal-backdrop{position:absolute;inset:0;background:rgba(2,9,13,.72);backdrop-filter:blur(5px)}.campaign-modal>section{position:relative;z-index:2;width:min(820px,100%);max-height:90vh;overflow:auto;background:#fff;color:#0b1620;border-radius:24px;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 30px 80px rgba(0,0,0,.4)}.campaign-modal>section>img{width:100%;height:100%;max-height:520px;object-fit:contain;background:#f4f7f8}.campaign-modal>section>div{padding:30px}.campaign-modal h2{font-size:clamp(28px,4vw,48px);line-height:1;margin:8px 0}.campaign-modal-close{position:absolute;right:10px;top:10px;z-index:3;width:38px;height:38px;border:0;border-radius:50%;background:#06151d;color:#fff;font-size:22px;cursor:pointer}
.campaign-landing-hero{width:min(1320px,calc(100% - 36px));margin:28px auto;display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center}.campaign-landing-hero .landing-image{background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 15px 45px rgba(3,21,30,.14)}.campaign-landing-hero .landing-image img{display:block;width:100%;max-height:600px;object-fit:contain}.campaign-landing-copy .eyebrow{color:#087d8c}.campaign-landing-copy h1{font-size:clamp(42px,6vw,86px);line-height:.92;margin:12px 0;color:#07131c}.campaign-landing-copy .landing-offer{font-size:clamp(22px,3vw,38px);font-weight:900;color:#f04d0c}.campaign-landing-grid{width:min(1200px,calc(100% - 36px));margin:34px auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.campaign-landing-grid article{padding:24px;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(3,21,30,.08)}.campaign-faq{width:min(1000px,calc(100% - 36px));margin:36px auto}.campaign-faq details{padding:16px 0;border-bottom:1px solid #d9e3e7}.campaign-faq summary{font-weight:900;cursor:pointer}.campaign-lead-form{width:min(920px,calc(100% - 36px));margin:36px auto;padding:26px;border-radius:22px;background:#071720;color:#fff}.campaign-lead-form form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.campaign-lead-form label{display:grid;gap:6px}.campaign-lead-form label.full{grid-column:1/-1}.campaign-lead-form input,.campaign-lead-form textarea,.campaign-lead-form select{padding:12px;border-radius:9px;border:1px solid #36505c;background:#0d242e;color:#fff}.campaign-lead-form button{grid-column:1/-1;padding:14px;border:0;border-radius:999px;background:#ffbd00;font-weight:950}.campaign-related{width:min(1200px,calc(100% - 36px));margin:40px auto}.campaign-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.campaign-related-grid a{display:grid;padding:18px;border-radius:15px;background:#fff;text-decoration:none;color:#0b1620;box-shadow:0 8px 24px rgba(3,21,30,.08)}
@media(max-width:820px){.campaign-slot,.campaign-inline,.campaign-compact{grid-template-columns:1fr;width:min(100% - 24px,680px);border-radius:20px}.campaign-slot .campaign-media{min-height:0}.campaign-slot .campaign-media img{height:auto;max-height:none;object-fit:contain}.campaign-slot .campaign-copy{padding:22px}.campaign-copy h2{font-size:clamp(28px,9vw,46px)}.campaign-announcement-link{justify-content:flex-start;overflow-x:auto;white-space:nowrap}.campaign-announcement-link span{display:none}.campaign-modal>section{grid-template-columns:1fr}.campaign-modal>section>img{max-height:300px}.campaign-landing-hero{grid-template-columns:1fr}.campaign-landing-grid,.campaign-related-grid{grid-template-columns:1fr 1fr}.campaign-lead-form form{grid-template-columns:1fr}.campaign-lead-form label.full,.campaign-lead-form button{grid-column:1}.campaign-countdown>div{gap:4px}.campaign-countdown span{min-width:46px}}
@media(max-width:480px){.campaign-slot{width:calc(100% - 18px);margin:16px auto;border-radius:16px}.campaign-slot .campaign-copy{padding:18px}.campaign-actions{display:grid}.campaign-btn{width:100%;box-sizing:border-box}.campaign-countdown{padding:10px}.campaign-countdown span{min-width:40px}.campaign-countdown b{font-size:18px}.campaign-countdown i{font-size:12px}.campaign-floating{bottom:76px;right:9px;width:calc(100vw - 18px)}.campaign-modal{padding:8px}.campaign-modal>section{border-radius:16px}.campaign-landing-hero,.campaign-landing-grid,.campaign-faq,.campaign-lead-form,.campaign-related{width:calc(100% - 18px)}.campaign-related-grid,.campaign-landing-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.campaign-slot,.campaign-modal,.campaign-floating{scroll-behavior:auto;transition:none!important;animation:none!important}}

.campaign-example-gallery,.campaign-related-services{width:min(1200px,calc(100% - 36px));margin:40px auto}.campaign-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.campaign-section-head h2,.campaign-related-services h2{font-size:clamp(28px,4vw,48px);margin:6px 0;color:#07131c}.campaign-example-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.campaign-example-grid a{display:grid;gap:8px;padding:12px;border-radius:18px;background:#fff;color:#0b1620;text-decoration:none;box-shadow:0 8px 24px rgba(3,21,30,.08)}.campaign-example-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.campaign-example-grid small{color:#087d8c;font-weight:900}.campaign-related-services>div{display:flex;gap:10px;flex-wrap:wrap}.campaign-related-services a{padding:11px 16px;border-radius:999px;background:#e9f6f7;color:#075e6b;text-decoration:none;font-weight:900}@media(max-width:700px){.campaign-example-grid{grid-template-columns:1fr}.campaign-section-head{align-items:flex-start;flex-direction:column}.campaign-example-gallery,.campaign-related-services{width:calc(100% - 18px)}}


/* V84 QA polish */
.campaign-slot,.campaign-modal,.campaign-floating,.campaign-landing-hero{max-width:100%;box-sizing:border-box}
.campaign-btn:focus-visible,.campaign-announcement-link:focus-visible,.campaign-floating a:focus-visible,.campaign-modal-close:focus-visible,.campaign-floating-close:focus-visible,.campaign-related-grid a:focus-visible,.campaign-related-services a:focus-visible{outline:3px solid #0aa7ba;outline-offset:3px}
.campaign-custom-utm{width:min(1200px,calc(100% - 36px));margin:24px auto;padding:22px;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(3,21,30,.08);display:grid;grid-template-columns:.7fr 1.3fr;gap:20px;align-items:start}.campaign-custom-utm h2{margin:5px 0}.campaign-custom-utm p{margin:0;color:#60707b}.campaign-custom-utm form{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.campaign-custom-utm label{display:grid;gap:5px;font-weight:800}.campaign-custom-utm label.full{grid-column:1/-1}.campaign-custom-utm input{min-width:0;padding:10px;border:1px solid #cfdce1;border-radius:9px}.campaign-custom-utm label.full span{display:grid;grid-template-columns:1fr auto;gap:7px}.campaign-custom-utm button{border:0;border-radius:9px;background:#071720;color:#fff;padding:10px 14px;font-weight:900;cursor:pointer}
@media(max-width:820px){.campaign-custom-utm{grid-template-columns:1fr;width:calc(100% - 24px)}.campaign-custom-utm form{grid-template-columns:1fr}.campaign-custom-utm label.full{grid-column:1}.campaign-announcement-link{white-space:normal;overflow:visible;flex-wrap:wrap}}
@media(max-width:480px){.campaign-custom-utm{width:calc(100% - 18px);padding:16px}.campaign-custom-utm label.full span{grid-template-columns:1fr}.campaign-countdown>div{justify-content:space-between}.campaign-countdown span{min-width:0;flex:1}}
