.campaign-intro{background:#f4f5f3;padding:64px 0 52px;border-bottom:1px solid #e0e5e7}.campaign-intro h1{font-size:clamp(36px,5vw,60px);letter-spacing:-.045em;margin:16px 0}.campaign-intro p{color:#586a75;max-width:650px;font-size:18px;line-height:1.7}.campaign-list-section{padding-top:32px;padding-bottom:80px}.campaign-filters{display:flex;gap:20px;align-items:end;margin-bottom:36px;padding:24px;background:#fff;border:1px solid #dce2e5;border-radius:12px}.campaign-filters>div{flex:1}.campaign-filters label,.campaign-editor label:not(.campaign-check){display:block;font-weight:600;margin:14px 0 8px}.campaign-filters select,.campaign-editor input:not([type=checkbox]),.campaign-editor textarea,.campaign-editor select{width:100%;padding:12px 14px;border:1px solid #b9c5cb;border-radius:6px;background:#fff;color:#233139;font:inherit}.managed-campaign-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.managed-campaign-card{border:1px solid #dce2e5;border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.managed-campaign-card>a{background:#f5f6f5}.managed-campaign-card img{width:100%;height:auto;aspect-ratio:1.6;object-fit:contain}.managed-campaign-card-body{padding:24px;display:flex;flex-direction:column;flex:1}.campaign-tag{display:inline-block;color:#51616b;font-size:12px;font-weight:700;letter-spacing:.04em}.managed-campaign-card h3{font-size:24px;line-height:1.25;margin:16px 0}.managed-campaign-card h3 a{color:#17232b;text-decoration:none}.managed-campaign-card p{color:#586a75;line-height:1.6}.managed-campaign-card small{color:#586a75;margin-top:auto}.campaign-detail-link{display:flex;justify-content:space-between;padding-top:20px;margin-top:18px;border-top:1px solid #e1e6e9;font-weight:700;color:#17232b;text-decoration:none}.campaign-detail-link span{color:#17232b;background:#ffe500;border-radius:50%;width:28px;height:28px;text-align:center}.campaign-empty{padding:56px 24px;text-align:center;background:#f5f6f5;border-radius:12px;max-width:900px;margin:24px auto}.campaign-empty p{max-width:580px;margin:16px auto 24px;color:#586a75}.campaign-detail-wrap{padding-top:32px;padding-bottom:70px}.managed-campaign-detail{display:grid;grid-template-columns:1.15fr 1fr;gap:48px;margin-top:28px;align-items:start}.campaign-detail-image{background:#f4f5f3;border-radius:12px;overflow:hidden}.campaign-detail-image img{width:100%;height:auto;object-fit:contain}.campaign-detail-copy h1{font-size:clamp(30px,3vw,44px);line-height:1.12;letter-spacing:-.035em;margin:18px 0}.campaign-lead{font-size:19px;color:#586a75;line-height:1.6}.campaign-dates{display:inline-block;padding:10px 14px;background:#fff9c5;font-size:14px;border-radius:4px}.campaign-prose{white-space:pre-line;overflow-wrap:anywhere;line-height:1.8}.campaign-conditions{border-top:1px solid #dce2e5;padding-top:24px;margin-top:28px;color:#586a75;font-size:14px}.campaign-conditions h2{font-size:18px;color:#233139}.campaign-detail-copy>.button{margin-top:28px}.home-campaigns{margin:48px 0 56px}.campaign-admin-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:24px 0}.campaign-admin-heading h1{margin-top:14px}.campaign-help{color:#647681;font-size:14px;line-height:1.6}.campaign-admin-row{display:grid;grid-template-columns:160px 1fr auto;gap:24px;align-items:center;padding:24px;border:1px solid #dce2e5;border-radius:12px;margin:16px 0;background:#fff}.campaign-admin-row>img{width:160px;height:110px;object-fit:contain;background:#f4f5f3}.campaign-admin-row h2{font-size:22px;margin:10px 0}.campaign-admin-row p{margin:8px 0}.campaign-admin-actions{display:flex;flex-direction:column;gap:14px;align-items:center}.campaign-editor{max-width:900px}.campaign-editor fieldset{margin:28px 0;padding:28px;background:#fff;border:1px solid #dce2e5;border-radius:12px;min-width:0}.campaign-editor legend{float:none;width:auto;font-size:22px;font-weight:700;padding:0 6px}.campaign-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.campaign-checks{display:flex;gap:20px;flex-wrap:wrap}.campaign-editor .campaign-check,.campaign-editor .campaign-checks label{display:flex;align-items:center;gap:10px;font-weight:500;margin:20px 0}.campaign-editor input[type=checkbox]{width:20px;height:20px;flex-shrink:0;accent-color:#243238}.campaign-editor-preview{max-width:100%;max-height:260px;object-fit:contain;margin:20px 0;background:#f3f4f3}.campaign-editor-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.campaign-popup .modal-dialog{max-width:680px;padding:12px}.campaign-popup .modal-content{overflow:hidden;border:0;border-radius:14px;position:relative;background:#fff}.campaign-popup img{display:block;width:100%;height:auto;max-height:52vh;object-fit:contain;background:#f4f5f3}.campaign-popup-body{padding:26px}.campaign-popup-body h2{font-size:28px;margin:12px 0;line-height:1.2}.campaign-popup-body p{color:#586a75;line-height:1.5}.campaign-popup-close{position:absolute;z-index:2;top:14px;right:14px;background-color:#fff;box-shadow:0 1px 8px #0003;border:8px solid white;opacity:1;border-radius:50%;box-sizing:content-box}.campaign-popup-dismiss{display:block;margin:14px auto 0;background:none;border:0;text-decoration:underline;color:#52616a}.campaign-popup-body>.button{width:100%;justify-content:center}.campaign-preview-popup{max-width:680px;margin:50px auto}.campaign-popup .modal-dialog{max-height:calc(100% - 24px)}.campaign-popup .modal-content{max-height:calc(100dvh - 48px);overflow-y:auto}
@media(max-width:900px){.managed-campaign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.managed-campaign-detail{grid-template-columns:1fr;gap:28px}.campaign-admin-row{grid-template-columns:120px 1fr}.campaign-admin-row>img{width:120px}.campaign-admin-actions{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}.campaign-admin-heading{align-items:start;flex-direction:column}}
@media(max-width:575px){.campaign-intro{padding:36px 0 24px}.campaign-intro p{font-size:16px}.campaign-filters{padding:18px;display:grid;gap:12px}.managed-campaign-grid{grid-template-columns:1fr}.campaign-field-grid{grid-template-columns:1fr;gap:8px}.campaign-editor fieldset{padding:18px}.campaign-popup-body{padding:20px}.campaign-popup-body h2{font-size:24px}.campaign-popup img{max-height:40dvh}.campaign-admin-row{padding:16px;gap:16px}.campaign-admin-row h2{font-size:19px}.campaign-admin-row{grid-template-columns:1fr}.campaign-admin-row>img{width:100%;height:160px}.home-campaigns{margin-top:32px}.managed-campaign-card-body{padding:22px}}
.campaign-image-placeholder{display:grid;place-items:center;width:160px;height:110px;background:#f4f5f3;color:#647681;font-size:13px;border-radius:8px}.campaign-admin-row>div{min-width:0}.managed-campaign-card h3,.campaign-detail-copy h1,.campaign-admin-row h2{overflow-wrap:anywhere}
/* Image-only special-day popup: retain the complete artwork at every screen size. */
.special-day-popup .modal-dialog{max-width:760px}
.special-day-popup .modal-content{background:transparent;border-radius:12px;overflow:hidden}
.special-day-popup img{display:block;width:100%;height:auto;max-height:calc(100dvh - 64px);object-fit:contain;background:transparent}
.special-day-popup .campaign-popup-close{width:20px;height:20px;padding:12px;top:8px;right:8px;opacity:1;box-shadow:0 2px 12px #0003;z-index:2}
.special-day-editor-preview{display:block;max-width:100%;max-height:440px;object-fit:contain;margin:16px auto}
@media(max-width:575px){.special-day-popup .modal-dialog{margin:12px auto;padding:0 12px}.special-day-popup img{max-height:calc(100dvh - 48px)}}
