.campaign-page{--campaign-max:1200px;min-width:320px;background:#fffaf2;color:var(--ink)}
.campaign-page img{max-width:100%}
.campaign-skip{position:absolute;top:-60px;left:16px;z-index:30;padding:10px 16px;background:#fff;color:var(--plum)}
.campaign-skip:focus{top:12px}
.campaign-header{position:relative;z-index:2;border-bottom:1px solid #eadbc4;background:#fffaf2}
.campaign-header-inner{width:min(var(--campaign-max),calc(100% - 48px));min-height:82px;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:18px}
.campaign-brand{pointer-events:none}
.campaign-header-button{flex:0 0 auto;min-height:45px;background:var(--plum);font-size:13px}
.campaign-header-button:hover{background:var(--wine)}
.campaign-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 85% 8%,#8c4939 0,transparent 31%),radial-gradient(ellipse at 2% 100%,#732744 0,transparent 38%),linear-gradient(116deg,#28102d,#401535 58%,#5a1c3c);color:#fff7eb}
.campaign-hero:before{position:absolute;content:"✿";right:-105px;top:8px;color:#e4c17c16;font:400 500px/1 Georgia,serif;transform:rotate(18deg);pointer-events:none}
.campaign-hero-inner{position:relative;z-index:1;width:min(var(--campaign-max),calc(100% - 48px));margin-inline:auto;padding:52px 0 42px;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(320px,.97fr);align-items:center;gap:clamp(34px,6vw,82px)}
.campaign-hero-copy{max-width:610px;padding:8px 0 22px}
.campaign-eyebrow{margin:0 0 13px;color:#986e37;font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1.5;text-transform:uppercase}
.campaign-eyebrow span{margin-right:7px;color:var(--gold-light);font-size:17px}
.campaign-hero .campaign-eyebrow,.campaign-final .campaign-eyebrow{color:#e5c37c}
.campaign-hero h1{max-width:650px;margin:0 0 20px;color:#fff7eb;font:500 clamp(44px,5.3vw,72px)/1.04 var(--serif);letter-spacing:-.035em}
.campaign-lead{max-width:570px;margin:0 0 13px;color:#f4e5d9;font:500 clamp(20px,2vw,25px)/1.42 var(--serif)}
.campaign-intro{max-width:565px;margin:0;color:#d9c8d2;font-size:14px;line-height:1.75}
.campaign-actions{display:flex;flex-wrap:wrap;gap:11px;margin:25px 0 15px}
.campaign-primary{min-height:53px;padding:14px 22px;border:1px solid #e1bb70;background:linear-gradient(130deg,#e1b761,#c38b3e);color:#29162d;font-size:14px;box-shadow:0 8px 24px #140b1b40}
.campaign-primary:hover{background:linear-gradient(130deg,#f0cb7b,#d39b4d);color:#29162d}
.campaign-primary>span{font-size:19px}
.campaign-secondary{min-height:53px;padding:13px 19px;border-color:#dec17c;background:#381633;color:#fff4e5;font-size:13px}
.campaign-secondary:hover{background:#542040;color:#fff4e5}
.campaign-availability{margin:0;color:#d7c6d2;font-size:11px;line-height:1.6}
.campaign-portrait{position:relative;width:min(100%,510px);height:570px;margin:0 0 0 auto;overflow:hidden;border:7px solid #e2c27e;border-radius:220px 220px 12px 12px;background:#eee0d0;box-shadow:0 28px 70px #160c1b70}
.campaign-portrait:before{position:absolute;z-index:1;inset:9px;border:1px solid #fff0c9;border-radius:210px 210px 6px 6px;content:"";pointer-events:none}
.campaign-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%}
.campaign-portrait figcaption{position:absolute;z-index:2;right:20px;bottom:20px;left:20px;display:flex;align-items:center;justify-content:space-between;gap:7px;padding:11px 13px;border:1px solid #d9b973;background:#30152be8;color:#fff4e5;font:12px var(--serif)}
.campaign-portrait figcaption span:nth-child(2){color:#e4c17c}
.campaign-photo-seal{position:absolute;z-index:2;top:24px;right:24px;display:grid;width:50px;height:50px;place-items:center;border:1px solid #f2d895;border-radius:50%;background:#351936c9;color:#f1d087;font-size:30px}
.campaign-proof{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:clamp(18px,4vw,55px);padding:18px 24px;border-top:1px solid #d8b96f55;background:#26102ce0}
.campaign-proof span{text-align:center}
.campaign-proof b,.campaign-proof small{display:block}
.campaign-proof b{color:#f5e4ce;font:500 17px var(--serif)}
.campaign-proof small{margin-top:2px;color:#d2bfcc;font-size:10px}
.campaign-proof i{width:1px;height:36px;background:#d5b56870}
.campaign-services,.campaign-format,.campaign-faq{padding:82px 24px}
.campaign-services{background:#fffaf2}
.campaign-section-heading{width:min(760px,100%);margin:0 auto 38px;text-align:center}
.campaign-section-heading h2,.campaign-guidance h2,.campaign-about h2,.campaign-final h2{margin:0 0 13px;color:var(--plum);font:500 clamp(33px,4vw,48px)/1.13 var(--serif);letter-spacing:-.025em}
.campaign-section-heading>p:last-child{max-width:680px;margin:0 auto;color:#716570;font-size:14px;line-height:1.7}
.campaign-service-grid{width:min(var(--campaign-max),100%);margin-inline:auto;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:17px}
.campaign-service-card{grid-column:span 2;position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:25px 24px 23px;border:1px solid #eadbc4;border-radius:9px;background:#fffdf9;box-shadow:0 10px 28px #3519360b}
.campaign-service-card:nth-child(n+4){grid-column:span 3}
.campaign-service-card:after{position:absolute;right:22px;bottom:-1px;left:22px;height:2px;background:linear-gradient(90deg,transparent,#bf8b42,transparent);content:""}
.campaign-service-highlight{border-color:#d5ad68;background:linear-gradient(140deg,#fff9ed,#f7e9dd)}
.campaign-service-icon{display:grid;width:62px;height:62px;place-items:center;border:1px solid #d7b678;border-radius:50%;background:#fffaf1;color:#8e5f28}
.campaign-service-icon svg{width:37px;height:37px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.campaign-card-label{margin:17px 0 5px;color:#98703c;font-size:9px;font-weight:700;letter-spacing:.14em;line-height:1.5}
.campaign-service-card h3{margin:0 0 8px;color:var(--plum);font:500 23px/1.2 var(--serif)}
.campaign-service-card>p:last-child{margin:0;color:#6f626b;font-size:13px;line-height:1.65}
.campaign-responsibility{width:min(840px,100%);margin:23px auto 0;color:#796e74;font-size:11px;line-height:1.6;text-align:center}
.campaign-guidance{padding:52px 24px;background:linear-gradient(112deg,#32142f,#56203b);color:#fff3e7}
.campaign-guidance-inner{width:min(1060px,100%);margin-inline:auto;display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:25px}
.campaign-guidance-mark{display:grid;width:66px;height:66px;place-items:center;border:1px solid #d3ad65;border-radius:50%;color:#e7c577;font-size:37px}
.campaign-guidance .campaign-eyebrow{margin-bottom:6px;color:#e2c17b}
.campaign-guidance h2{margin:0 0 8px;color:#fff4e5;font-size:31px}
.campaign-guidance-inner>div:nth-child(2)>p:last-child{max-width:730px;margin:0;color:#e4d2dc;font-size:13px;line-height:1.7}
.campaign-guidance-button{min-height:47px;padding:11px 16px;border:1px solid #d8b86f;background:transparent;color:#fff4e5;font-size:12px;white-space:nowrap}
.campaign-guidance-button:hover{background:#fff2df;color:#351936}
.campaign-about{width:min(var(--campaign-max),calc(100% - 48px));margin-inline:auto;padding:84px 0;display:grid;grid-template-columns:minmax(260px,.76fr) minmax(0,1.24fr);align-items:center;gap:clamp(36px,7vw,96px)}
.campaign-about-photo{position:relative;height:430px;margin:0;overflow:hidden;border:6px solid #ead5b1;border-radius:170px 170px 9px 9px;background:#f3e9df;box-shadow:0 18px 46px #35193618}
.campaign-about-photo:before{position:absolute;z-index:1;inset:8px;border:1px solid #fff4dc;border-radius:160px 160px 4px 4px;content:"";pointer-events:none}
.campaign-about-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.campaign-about-photo figcaption{position:absolute;right:14px;bottom:15px;left:14px;padding:10px;border:1px solid #d5b66f;background:#351936e8;color:#fff3e5;font:14px var(--serif);text-align:center}
.campaign-about-copy>p:not(.campaign-eyebrow){max-width:680px;color:#695d66;font-size:14px;line-height:1.8}
.campaign-text-link{display:inline-flex;align-items:center;gap:8px;margin-top:5px;color:var(--wine);font-size:13px;font-weight:700;text-decoration:none}
.campaign-text-link:hover{text-decoration:underline}
.campaign-format{background:#f7eee2}
.campaign-format-items{width:min(1000px,100%);margin-inline:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.campaign-format-items article{padding:22px 19px;border:1px solid #e5d2b3;border-radius:8px;background:#fffaf2;text-align:center}
.campaign-format-items article>span{display:grid;width:46px;height:46px;margin:0 auto 10px;place-items:center;border:1px solid #d7b879;border-radius:50%;color:#9b6c31;font-size:24px}
.campaign-format-items h3{margin:0 0 4px;color:var(--plum);font:500 21px var(--serif)}
.campaign-format-items p{margin:0;color:#716570;font-size:12px;line-height:1.6}
.campaign-faq{background:#fffaf2}
.campaign-faq-list{width:min(820px,100%);margin-inline:auto;border-top:1px solid #e6d7c0}
.campaign-faq-list details{border-bottom:1px solid #e6d7c0}
.campaign-faq-list summary{position:relative;padding:17px 44px 17px 3px;cursor:pointer;list-style:none;color:var(--plum);font:500 18px/1.45 var(--serif)}
.campaign-faq-list summary::-webkit-details-marker{display:none}
.campaign-faq-list summary:after{position:absolute;top:14px;right:8px;color:#a77636;content:"+";font:24px/1 var(--sans)}
.campaign-faq-list details[open] summary:after{content:"−"}
.campaign-faq-list details p{max-width:760px;margin:0;padding:0 22px 18px 3px;color:#70636c;font-size:13px;line-height:1.75}
.campaign-final{position:relative;overflow:hidden;padding:76px 24px;background:radial-gradient(ellipse at 100% 100%,#6b2543,#35142f 65%);color:#fff5e9;text-align:center}
.campaign-final:before{position:absolute;top:-125px;left:-75px;color:#e2bd6c18;content:"✿";font:400 310px/1 Georgia,serif}
.campaign-final-inner{position:relative;z-index:1;width:min(760px,100%);margin-inline:auto}
.campaign-final h2{color:#fff5e9}
.campaign-final-inner>p:not(.campaign-eyebrow){margin:0 0 22px;color:#e5d2dc;font-size:14px}
.campaign-age{margin:14px 0 0;color:#d3bfca;font-size:11px}
.campaign-footer{padding:20px 24px;background:#211123;color:#eadddf}
.campaign-footer-inner{width:min(var(--campaign-max),100%);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:11px}
.campaign-footer nav{display:flex;flex-wrap:wrap;gap:18px}
.campaign-footer a{color:#e9d9df;text-decoration:none}
.campaign-footer a:hover{text-decoration:underline;color:#e4c17c}
.campaign-page a:focus-visible{outline:3px solid #dfb85f;outline-offset:3px}
@media(max-width:980px){.campaign-hero-inner{grid-template-columns:minmax(0,1fr) minmax(270px,.86fr);gap:34px}.campaign-portrait{height:510px}.campaign-hero h1{font-size:clamp(43px,5.5vw,60px)}.campaign-guidance-inner{grid-template-columns:60px minmax(0,1fr);gap:19px}.campaign-guidance-button{grid-column:2;justify-self:start}.campaign-about{gap:42px}}
@media(max-width:760px){.campaign-header-inner{width:calc(100% - 32px);min-height:70px}.campaign-brand .brand-mark{width:37px;height:37px;font-size:22px}.campaign-brand strong{font-size:26px}.campaign-brand small{font-size:9px}.campaign-brand em{font-size:8px}.campaign-header-button{min-height:40px;padding:9px 12px;font-size:11px}.campaign-hero-inner{width:calc(100% - 36px);padding:37px 0 30px;grid-template-columns:1fr;gap:27px}.campaign-hero-copy{max-width:none;padding:0}.campaign-hero h1{max-width:620px;font-size:clamp(43px,9vw,58px)}.campaign-lead{font-size:20px}.campaign-intro{font-size:13px}.campaign-actions{margin:20px 0 12px}.campaign-actions .button{flex:1 1 auto}.campaign-portrait{width:min(100%,440px);height:470px;margin-inline:auto;border-radius:180px 180px 10px 10px}.campaign-portrait:before{border-radius:170px 170px 5px 5px}.campaign-proof{gap:14px;padding:15px 13px}.campaign-proof b{font-size:14px}.campaign-proof small{max-width:150px;font-size:9px}.campaign-services,.campaign-format,.campaign-faq{padding:63px 18px}.campaign-section-heading{margin-bottom:29px}.campaign-section-heading h2,.campaign-about h2{font-size:36px}.campaign-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.campaign-service-card,.campaign-service-card:nth-child(n+4){grid-column:span 1;padding:20px 17px}.campaign-service-card:nth-child(5){grid-column:1/-1;width:calc(50% - 6px);justify-self:center}.campaign-service-card h3{font-size:21px}.campaign-service-card>p:last-child{font-size:12px}.campaign-guidance{padding:37px 20px}.campaign-guidance-inner{grid-template-columns:48px minmax(0,1fr);gap:14px}.campaign-guidance-mark{width:48px;height:48px;font-size:29px}.campaign-guidance h2{font-size:28px}.campaign-guidance-inner>div:nth-child(2)>p:last-child{font-size:12px}.campaign-guidance-button{grid-column:2}.campaign-about{width:calc(100% - 36px);padding:63px 0;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px}.campaign-about-photo{height:350px}.campaign-about-copy>p:not(.campaign-eyebrow){font-size:13px}.campaign-format-items{grid-template-columns:1fr;max-width:480px}.campaign-format-items article{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:13px;align-items:center;text-align:left;padding:15px}.campaign-format-items article>span{grid-row:span 2;margin:0}.campaign-format-items h3{align-self:end}.campaign-format-items p{align-self:start}.campaign-faq-list summary{font-size:17px}.campaign-footer-inner{align-items:flex-start;flex-direction:column}.campaign-footer nav{gap:10px 17px}}
@media(max-width:540px){.campaign-header-inner{width:calc(100% - 24px);gap:8px}.campaign-brand{gap:7px;min-width:0}.campaign-brand .brand-mark{width:32px;height:32px;font-size:19px}.campaign-brand strong{font-size:23px}.campaign-brand small{font-size:8px}.campaign-brand em{font-size:7px;letter-spacing:0}.campaign-header-button{min-height:38px;padding:8px 9px;font-size:10px;white-space:nowrap}.campaign-hero-inner{width:calc(100% - 30px);padding-top:31px}.campaign-eyebrow{font-size:9px;letter-spacing:.13em}.campaign-hero h1{font-size:clamp(39px,11vw,50px)}.campaign-lead{font-size:18px}.campaign-actions{flex-direction:column}.campaign-actions .button{width:100%;min-height:48px}.campaign-availability{font-size:10px}.campaign-portrait{height:390px;width:min(100%,370px);border-radius:150px 150px 8px 8px}.campaign-portrait:before{border-radius:140px 140px 5px 5px}.campaign-portrait figcaption{right:12px;bottom:13px;left:12px;padding:9px;font-size:10px}.campaign-photo-seal{top:20px;right:19px;width:42px;height:42px;font-size:25px}.campaign-proof{justify-content:space-between;gap:8px;padding:13px 10px}.campaign-proof b{font-size:12px}.campaign-proof small{max-width:112px;font-size:8px}.campaign-proof i{height:30px}.campaign-services,.campaign-format,.campaign-faq{padding:55px 15px}.campaign-section-heading{margin-bottom:25px}.campaign-section-heading h2,.campaign-about h2{font-size:33px}.campaign-section-heading>p:last-child{font-size:13px}.campaign-service-grid{grid-template-columns:minmax(0,1fr);gap:11px}.campaign-service-card,.campaign-service-card:nth-child(n+4),.campaign-service-card:nth-child(5){grid-column:1;width:100%;padding:19px 18px}.campaign-service-icon{width:55px;height:55px}.campaign-service-icon svg{width:33px;height:33px}.campaign-card-label{margin-top:13px}.campaign-service-card h3{font-size:22px}.campaign-service-card>p:last-child{font-size:13px}.campaign-guidance{padding:32px 17px}.campaign-guidance-inner{grid-template-columns:1fr;gap:13px}.campaign-guidance-mark{width:47px;height:47px}.campaign-guidance h2{font-size:27px}.campaign-guidance-button{grid-column:1;white-space:normal}.campaign-about{width:calc(100% - 30px);padding:55px 0;grid-template-columns:1fr;gap:25px}.campaign-about-photo{width:min(100%,360px);height:380px;margin-inline:auto}.campaign-about-copy>p:not(.campaign-eyebrow){font-size:13px}.campaign-format-items article{padding:14px}.campaign-faq-list summary{padding-right:35px;font-size:16px}.campaign-faq-list details p{font-size:12px}.campaign-final{padding:61px 18px}.campaign-final h2{font-size:35px}.campaign-final .button{width:100%;font-size:12px}.campaign-footer{padding:19px 16px}}
@media(prefers-reduced-motion:reduce){.campaign-page *,.campaign-page *:before,.campaign-page *:after{scroll-behavior:auto!important;transition:none!important}}
