@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
body{background:white;color:#292929;font-family:Poppins,Arial,sans-serif}h1{font-family:inherit;font-size:40px;font-weight:700;line-height:1.35}header{min-height:90px;padding:10px 7%;background:#4b1c2b}header img{width:110px;height:65px}.header-actions{display:flex;gap:10px}.header-actions a{padding:12px 25px;border-radius:5px;text-decoration:none;color:#111;background:#eae7dc}.header-actions .header-donate{background:#ffeb00;font-weight:700}.review{background:#fcf8f1;color:#766257;font-size:11px;padding:5px 15px}.review summary{cursor:pointer}.review span{font-size:11px;margin:8px auto}main:focus{outline:none}footer{background:#4b1c2b url('image/campaign-bg.webp') center/cover;color:white;padding:70px 20px;font-size:14px}footer h2{font-size:40px}footer a{color:white}input,select,textarea{border-radius:2px;background:#fff;font-size:15px;padding:8px 12px;line-height:1.5;font-family:inherit}button,.button{font-family:inherit}body[data-page=signup] main,body[data-page=thanks] main,body[data-page=login] main{max-width:none;padding:0;margin:0}.registration-banner{background:#d4d4d4;min-height:300px;display:grid;place-items:center;border-inline:clamp(0px,3vw,50px) solid #8c7980}.registration-banner h1{color:white;font-size:46px;margin:0}.registration-form{width:calc(100% - 36px);max-width:800px;margin:60px auto 48px;background:#efdae0;padding:24px}.mandatory{color:green;font-size:14px;margin:0 0 20px}.nationality{display:grid;grid-template-columns:1fr 1fr;gap:75px;margin-bottom:34px}.nationality button{border-radius:0;padding:8px;background:#fff;color:#842d42;font-size:20px;line-height:1.4}.nationality button[aria-pressed=true]{background:#842d42;color:#fff}.name-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.registration-form .fields{gap:10px 36px}.registration-form label{color:#842d42;font-weight:400;font-size:15px}.registration-form label>span{color:red}.registration-form input{margin:3px 0 12px;height:41px}.registration-form textarea{margin-top:4px;height:104px;min-height:104px;font-size:18px}.registration-form small{color:green;font-size:12px;display:block;line-height:1.5}.registration-form input[type=file]{padding:5px;font-size:13px;margin-bottom:0;height:45px}.phone-fields{display:flex;gap:4px}.phone-fields select{width:110px;flex-shrink:0;margin:3px 0 12px;height:41px}.phone-fields input{min-width:0}.registration-form .review-check{background:#fafafa;border:1px solid #ccc;padding:16px;margin:20px 0 12px;max-width:360px;color:#222;box-shadow:0 2px 3px #0001}.registration-form input[type=checkbox]{height:18px;width:18px;vertical-align:middle;margin:0 10px 0 0}.registration-form .consent{font-size:12px;color:#555;margin-bottom:8px}.registration-submit{width:100%;margin-top:40px;border-radius:0;font-size:23px;padding:18px}.thankyou-page{text-align:center;min-height:440px;padding:55px 20px}.thankyou-page h1{font-size:32px;margin:0 0 80px}.thankyou-page h2{font-size:20px;font-weight:700;margin:0 0 25px}.thankyou-page .button{padding:12px 65px;border-radius:30px}.review-details{font-size:12px;color:#777;margin:20px auto;max-width:600px}.review-details summary{cursor:pointer}.login-backdrop{min-height:85vh;background:linear-gradient(#35121c44,#35121caa),url('assets/temple-02.jpg') center/cover;position:relative}.login-temple{text-align:center;padding:30px;color:white}.login-temple h1{font-size:55px;color:white}.login-overlay{position:fixed;inset:0;background:#071c33b0;z-index:10;overflow:auto;padding:12px 20px 35px}.login-modal{max-width:900px;margin:0 auto;background:#fff;border-radius:26px;overflow:hidden}.login-title{background:#842d42;position:relative;padding:24px;text-align:center}.login-title h1{color:white;margin:0;font-size:30px}.login-close{position:absolute;right:18px;top:8px;color:#e5c9d0;font-size:46px;text-decoration:none;line-height:1}.login-modal form{padding:24px 46px 38px}.login-modal input{height:50px;margin:0 0 23px;font-size:20px;border-color:#ddd}.login-submit{width:100%;border-radius:24px;font-size:24px;font-weight:400;padding:8px}.login-links{text-align:center;margin:25px 0}.login-links button{background:none;color:#842d42;padding:0;font-size:18px;font-weight:400}.login-links a{text-decoration:none}.login-test{text-align:center;color:#777;font-size:11px;margin-bottom:0}.vcm-campaign-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;padding:30px 0 50px}.vcm-campaign-intro h1{font-size:27px;color:#333}.vcm-campaign-intro .card{padding:0;box-shadow:none;border:0;margin:25px 0}.vcm-campaign-intro .quote{border:0;padding:0;font-size:16px}.vcm-goal{align-self:center}.vcm-goal .stats{background:none}.vcm-goal .stat{background:none;padding:5px}.public-temple-hero img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:0}.public-hero-caption{text-align:center;background:#4b1c2b;color:white;padding:35px}.public-hero-caption h1{color:white;font-size:40px}.public-hero-caption button{border-radius:30px;background:#ffeb00;color:#111;font-size:22px;margin-top:24px;padding:12px 45px}.public-checkout{max-width:800px;margin:40px auto}.public-checkout .card{border-radius:0;background:#f5e8ec;box-shadow:none}body[data-page=public] main{max-width:1320px}.review-tools{margin-top:20px;font-size:12px}.review-tools a{margin:0 8px}@media(max-width:700px){header{min-height:75px;padding:8px 16px}.header-actions a{padding:10px;font-size:12px}header img{width:85px;height:50px}.registration-banner{min-height:180px}.registration-banner h1{font-size:30px}.registration-form{margin:30px auto;padding:20px}.nationality{gap:20px;margin-bottom:25px}.name-fields{grid-template-columns:1fr;gap:0}.registration-form .fields{gap:8px}.registration-form textarea{font-size:15px}.registration-submit{margin-top:22px}.login-overlay{padding:12px}.login-title{padding:20px}.login-title h1{font-size:23px}.login-modal form{padding:22px}.login-modal input{font-size:16px}.login-links,.login-links button{font-size:14px}.thankyou-page h1{margin-bottom:45px}.thankyou-page h2{font-size:17px}.vcm-campaign-intro{grid-template-columns:1fr;gap:10px}.public-hero-caption h1{font-size:27px}footer h2{font-size:30px}}
/* Compact VCM-style campaign registration controls */
.registration-form{max-width:760px;margin:48px auto 40px;padding:20px;font-size:14px}
.mandatory{font-size:13px;margin-bottom:16px}
.nationality{gap:54px;margin-bottom:26px}
.nationality button{padding:7px;font-size:17px;line-height:1.35}
.name-fields{gap:24px}
.registration-form .fields{gap:8px 24px}
.registration-form label{font-size:14px}
.registration-form input{height:36px;margin:2px 0 9px;padding:7px 10px;font-size:14px}
.registration-form textarea{height:90px;min-height:90px;margin-top:3px;padding:9px 12px;font-size:16px}
.registration-form small{font-size:11px}
.registration-form input[type=file]{height:40px;padding:4px;font-size:12px}
.phone-fields select{width:100px;margin:2px 0 9px;height:36px;padding:6px 8px;font-size:13px}
.registration-submit{margin-top:28px;padding:14px;font-size:19px}
@media(max-width:700px){.registration-form{margin:24px auto 32px;padding:16px}.nationality{gap:16px;margin-bottom:20px}.nationality button{font-size:16px}.name-fields{gap:0}.registration-form .fields{gap:6px}.registration-form textarea{height:84px;min-height:84px;font-size:15px}.registration-submit{margin-top:18px;padding:12px;font-size:18px}}
/* Teal-blue gradient palette */
:root{--campaign-teal:#117e91;--campaign-blue:#315caa;--campaign-gradient:linear-gradient(120deg,#117e91 0%,#156da2 52%,#315caa 100%)}
header,.login-title,.public-hero-caption,footer{background:var(--campaign-gradient)}
.registration-banner{background:linear-gradient(120deg,#d7edf0,#e1eaf6);border-color:#3b82a9}
.registration-banner h1{color:#135782}
.registration-form,.public-checkout .card{background:#e8f2f3}
.registration-form label,.login-links button,.nationality button{color:#117e91}
.nationality button[aria-pressed=true],.registration-submit,.login-submit,.public-hero-caption button:not(:hover){background:var(--campaign-gradient);color:#fff}
.login-links a,.review-tools a{color:#117e91}
.login-backdrop{background:linear-gradient(120deg,#0a667d88,#153f7aaa),url('assets/temple-02.jpg') center/cover}
.login-overlay{background:#07324eb0}
.vcm-campaign-intro h1,.campaign-title,.campaign-message-block h2,.campaign-goal-block h2{color:#168bba!important}
.campaign-message-block blockquote{border-color:#36a0ad}
.campaigner-name{color:#168bba}
.campaign-goal-block progress{accent-color:#168bba}
button,.button,.login-title,.registration-submit{border-color:#168bba}

.review-data-warning{background:#fff7dc;border:1px solid #e4c462;border-radius:8px;color:#624d12;padding:12px 15px;margin:12px 0 18px;font-size:13px;line-height:1.5}.card form label{display:block;margin:12px 0 6px}.card form input,.card form select,.card form textarea{display:block;width:100%;min-height:38px;margin-top:5px;padding:8px;border:1px solid #ccd3dc;border-radius:5px}.card form input[type=checkbox]{display:inline-block;width:auto;min-height:auto;margin-right:8px}.card form label:has(input[type=checkbox]){display:flex;align-items:center;gap:8px}.card form label[hidden]{display:none!important}.card form button{margin-top:12px}


.campaigner-photo{width:88px;height:88px;border-radius:50%;object-fit:cover;margin:0 0 1rem;border:3px solid #f1d36c;}

.signup-captcha{margin:16px 0 22px;min-height:78px}.signup-captcha[hidden]{display:none!important}.signup-captcha iframe{max-width:100%}

/* Google identity and campaign setup */
.auth-start{padding:34px 40px;text-align:center;margin:42px auto}.auth-start h2,.auth-choice h2{color:#292929}.auth-start>p,.auth-choice>p{color:#64585c}.google-signin{display:flex;justify-content:center;min-height:44px;margin:22px auto}.google-signin>div{max-width:100%}.auth-choice{text-align:center;padding:28px 42px 10px}.admin-signin{border-top:1px solid #e8ded3;padding:16px 42px 20px}.admin-signin summary{cursor:pointer;color:#117e91;font-weight:600;text-align:center}.admin-signin form{padding:18px 0 0}.onboarding-form{margin:40px auto}.onboarding-form>p{color:#64585c}.onboarding-form form{margin-top:22px}.onboarding-form textarea{min-height:140px}.onboarding-form .registration-submit{margin-top:12px;border-radius:6px}@media(max-width:700px){.auth-start{margin:22px 16px;padding:25px 20px}.auth-choice{padding:24px 20px 6px}.admin-signin{padding:14px 20px 20px}.admin-signin form{padding:14px 0 0}.onboarding-form{margin:24px 16px}}
.campaign-dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.campaign-dashboard-heading h1{margin:0}.campaign-dashboard-heading .eyebrow{margin-bottom:4px}@media(max-width:700px){.campaign-dashboard-heading{align-items:flex-start;flex-direction:column;gap:8px}}

/* Compact campaign studio forms, dashboards, and public pages. */
body{font-size:15px}
header{min-height:78px;padding:8px 6%}
header img{width:100px;height:58px}
.header-actions a{padding:10px 18px}
main{max-width:1020px;margin:32px auto;padding:0 20px}
footer{padding:48px 20px;font-size:13px}
footer h2{font-size:32px}
.card{padding:24px;margin:18px 0}
body[data-page=signup] .registration-banner{min-height:250px}
body[data-page=signup] .registration-banner h1{font-size:40px}
body[data-page=signup] .registration-form{max-width:740px;margin:44px auto 38px;padding:22px}
body[data-page=signup] .mandatory{margin-bottom:16px}
body[data-page=signup] .nationality{gap:56px;margin-bottom:28px}
body[data-page=signup] .nationality button{font-size:18px}
body[data-page=signup] .name-fields{gap:28px}
body[data-page=signup] .registration-form .fields{gap:8px 28px}
body[data-page=signup] .registration-form label{font-size:14px}
body[data-page=signup] .registration-form input{height:38px}
body[data-page=signup] .phone-fields select{height:38px}
body[data-page=signup] .registration-form textarea{height:90px;min-height:90px;font-size:16px}
body[data-page=signup] .registration-submit{font-size:20px;padding:15px;margin-top:30px}
body[data-page=login] .login-modal{max-width:800px;border-radius:22px}
body[data-page=login] .login-title{padding:20px}
body[data-page=login] .login-title h1{font-size:26px}
body[data-page=login] .login-modal form{padding:20px 38px 30px}
body[data-page=login] .login-modal input{height:44px;margin-bottom:18px;font-size:17px}
body[data-page=login] .login-submit{font-size:21px}
body[data-page=login] .login-links{margin:20px 0}
body[data-page=login] .login-links button{font-size:16px}
body[data-page=onboarding] main,body[data-page=dashboard] main,body[data-page=admin] main,body[data-page=thanks] main{max-width:1020px}
body[data-page=onboarding] main h1,body[data-page=dashboard] main h1,body[data-page=admin] main h1,body[data-page=thanks] main h1{font-size:34px}
body[data-page=onboarding] .card,body[data-page=dashboard] .card,body[data-page=admin] .card,body[data-page=thanks] .card{padding:24px}
body[data-page=public] main{max-width:1020px;margin:30px auto;padding:0 22px}
body[data-page=public] .vcm-campaign-intro{gap:40px;padding:26px 0 38px}
body[data-page=public] .vcm-campaign-intro h1{font-size:25px}
body[data-page=public] .vcm-campaign-intro .card{margin:20px 0;padding:20px}
body[data-page=public] .vcm-campaign-intro .quote{font-size:15px}
body[data-page=public] .public-hero-caption{padding:28px}
body[data-page=public] .public-hero-caption h1{font-size:34px}
body[data-page=public] .public-hero-caption button{font-size:19px;padding:11px 36px}
body[data-page=public] .public-checkout{display:block;width:100%;max-width:740px;margin:32px auto}
body[data-page=public] .public-checkout .card{width:100%}
body[data-page=public] .public-checkout .card{padding:22px}
.temple-goal-note{font-size:14px;color:#74686d;margin:8px 0 18px}
@media(max-width:700px){
 header{min-height:68px;padding:8px 14px}
 header img{width:86px;height:50px}
 .header-actions a{padding:9px 11px;font-size:12px}
 main{margin:22px auto;padding:0 14px}
 footer{padding:38px 16px}
 footer h2{font-size:27px}
 .card{padding:19px}
 body[data-page=signup] .registration-banner{min-height:210px}
 body[data-page=signup] .registration-banner h1{font-size:30px}
 body[data-page=signup] .registration-form{margin:24px auto 30px;padding:18px}
 body[data-page=signup] .nationality{gap:14px;margin-bottom:22px}
 body[data-page=signup] .nationality button{font-size:16px}
 body[data-page=signup] .name-fields{gap:0}
 body[data-page=signup] .registration-form .fields{gap:6px}
 body[data-page=signup] .registration-form input,body[data-page=signup] .registration-form textarea,body[data-page=signup] .phone-fields select{font-size:16px}
 body[data-page=signup] .registration-submit{font-size:18px;padding:13px;margin-top:22px}
 body[data-page=login] .login-modal{border-radius:16px}
 body[data-page=login] .login-title{padding:17px}
 body[data-page=login] .login-title h1{font-size:22px}
 body[data-page=login] .login-modal form{padding:18px}
 body[data-page=login] .login-modal input{font-size:16px}
 body[data-page=onboarding] main h1,body[data-page=dashboard] main h1,body[data-page=admin] main h1,body[data-page=thanks] main h1{font-size:28px}
 body[data-page=onboarding] .card,body[data-page=dashboard] .card,body[data-page=admin] .card,body[data-page=thanks] .card{padding:19px}
 body[data-page=public] main{margin:22px auto;padding:0 14px}
 body[data-page=public] .vcm-campaign-intro{gap:8px;padding:18px 0 26px}
 body[data-page=public] .vcm-campaign-intro h1{font-size:22px}
 body[data-page=public] .public-hero-caption{padding:22px 16px}
 body[data-page=public] .public-hero-caption h1{font-size:27px}
 body[data-page=public] .public-checkout{margin:24px auto}
 body[data-page=public] .public-checkout .card{padding:18px}
}