/* The campaign welcome is a portrait and a short parchment history. */
.modal.campaign-intro-modal{max-width:920px;padding:28px 30px 26px;max-height:calc(100dvh - 48px);overflow:auto;scrollbar-gutter:stable}
.campaign-intro-modal>.modal-close{position:sticky;top:0;right:auto;display:flex;margin:0 0 -38px auto;z-index:8}
.campaign-intro{display:grid;grid-template-columns:minmax(190px,.72fr) minmax(0,1fr);column-gap:30px;row-gap:22px;align-items:center;color:#4d402b;min-width:0}
.campaign-intro-figure{min-width:0;margin:0;align-self:start;width:100%;max-width:276px;justify-self:center}
.campaign-intro-art{position:relative;isolation:isolate;aspect-ratio:2/3;overflow:hidden;border:4px ridge #c5af74;border-radius:12px;background:#183125;box-shadow:0 9px 22px #182c244a,inset 0 0 0 2px #152d24}
.campaign-intro-art::after{content:"";position:absolute;inset:6px;border:1px solid #ead89b66;border-radius:5px;pointer-events:none;box-shadow:inset 0 0 18px #13251c25}
.campaign-intro-art>.portrait-tile{display:block;width:100%;height:100%}
.campaign-intro-figure figcaption{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:12px 0 0;padding:10px 12px;border:1px solid #987d454d;border-radius:5px;background:linear-gradient(110deg,#f8edce5c,#d1bb8738);text-align:center}
.campaign-intro-figure figcaption h3{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:23px;line-height:1.2;color:#243f31}
.campaign-intro-figure figcaption span{display:inline-block;padding:3px 6px;border:1px solid #a38747;border-radius:3px;background:#223e2f;color:#edd7a5;font-size:10px;font-weight:700;line-height:1.2}
.campaign-intro-copy{min-width:0;align-self:center;padding:0 0 0 2px}
.campaign-intro-copy .eyebrow{margin:0 42px 10px 0;color:#92703e;font-size:10px;letter-spacing:2.5px;font-weight:700}
.campaign-intro-copy h2{margin:0 38px 20px 0;color:#263c2e;font-family:Georgia,'Times New Roman',serif;font-size:31px;line-height:1.16}
.campaign-intro-copy>p{margin:0 0 15px;font-size:14px;line-height:1.8;color:#55462f;overflow-wrap:break-word}
.campaign-intro-copy>p:last-of-type{margin-bottom:0}
.campaign-intro-copy strong{color:#244533}
.campaign-intro-sources{display:flex;flex-wrap:wrap;gap:5px 13px;margin:17px 0 0;padding-top:12px;border-top:1px solid #a3884850;font-size:10px;line-height:1.65;color:#826a43}
.campaign-intro-sources a{color:#526b44;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere;font-size:10px;line-height:1.65}
.campaign-intro-sources a:hover{color:#173d2d}
.campaign-intro-sources a:focus-visible{outline:2px solid #b28b44;outline-offset:3px}
.campaign-intro-footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:17px 0 0;border-top:1px solid #a78b4e57}
.campaign-intro-dismiss{display:inline-flex;align-items:center;gap:10px;margin:0;min-width:0;color:#655239;font-size:12px;line-height:1.45;cursor:pointer}
.campaign-intro-dismiss input[type=checkbox]{flex:none;width:18px;height:18px;margin:0;accent-color:#355841;cursor:pointer}
.campaign-intro-dismiss input[type=checkbox]:focus-visible{outline:2px solid #af873e;outline-offset:4px}
.campaign-intro-footer>.btn{flex:none;min-width:194px;min-height:42px;padding:10px 20px;font-size:13px}
@media(max-width:760px){
 .modal.campaign-intro-modal{max-width:610px;padding:22px 20px 20px;max-height:calc(100dvh - 26px)}
 .campaign-intro-modal>.modal-close{margin-bottom:-34px}
 .campaign-intro{grid-template-columns:minmax(150px,.62fr) minmax(0,1fr);column-gap:20px;row-gap:20px;align-items:start}
 .campaign-intro-copy h2{font-size:26px;margin-bottom:15px}
 .campaign-intro-copy>p{font-size:13px;line-height:1.8;margin-bottom:12px}
 .campaign-intro-figure figcaption{gap:7px;padding:9px 6px}
 .campaign-intro-figure figcaption h3{font-size:19px}
 .campaign-intro-footer>.btn{min-width:170px}
}
@media(max-width:560px){
 .modal.campaign-intro-modal{padding:21px 18px 19px;scrollbar-gutter:auto}
 .campaign-intro{grid-template-columns:minmax(0,1fr);gap:20px}
 .campaign-intro-figure{width:180px;max-width:72%;margin:0 auto}
 .campaign-intro-copy{padding:0}
 .campaign-intro-copy .eyebrow{margin:0 0 8px}
 .campaign-intro-copy h2{margin:0 0 16px;font-size:25px;line-height:1.2}
 .campaign-intro-copy>p{font-size:13px;line-height:1.8;margin-bottom:14px}
 .campaign-intro-footer{flex-direction:column;align-items:stretch;gap:15px;padding-top:17px}
 .campaign-intro-dismiss{align-self:flex-start;font-size:12px}
 .campaign-intro-footer>.btn{width:100%;min-width:0;min-height:42px}
}
@media(max-width:340px){
 .modal.campaign-intro-modal{padding:20px 15px 18px}
 .campaign-intro-figure{width:168px;max-width:76%}
 .campaign-intro-copy h2{font-size:23px}
}
