/* Public giving preview and concise service pages. Existing account/payment styles stay separate. */
.service main{position:relative;isolation:isolate}
.service main::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(#8a794b21 .8px,transparent .8px);background-size:7px 7px;opacity:.4}
.service [hidden]{display:none!important}
.service button,.service input,.service select{font:inherit}
.service button{cursor:pointer}
.service :is(button,input,select,a,summary):focus-visible{outline:3px solid #a47b2d;outline-offset:4px}
.service-breadcrumb{padding-top:24px}
.give-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(40px,6vw,90px);align-items:center;padding:54px 0 75px}
.give-intro{position:relative}
.give-intro>.kicker{font-size:10px;margin-bottom:24px;display:flex;align-items:center;gap:14px}
.live-dot{width:7px;height:7px;border-radius:50%;background:#a37826;box-shadow:0 0 0 6px #d9b96825;animation:gentle-pulse 3.5s ease-in-out infinite}
.service .give-intro h1{font-size:clamp(62px,6.1vw,88px);line-height:1.02;letter-spacing:-.05em}
.give-intro h1 em{color:#76804e}
.give-intro>p:not(.kicker){font-size:15px;line-height:1.8;max-width:370px;margin-top:25px;color:#60694f}
.giving-hand{width:210px;height:92px;margin-top:23px;color:#8c956b;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round}
.giving-hand .floating-heart{transform-origin:center;animation:soft-float 6s ease-in-out infinite}
.give-shortcuts{display:flex;gap:25px;margin-top:22px;flex-wrap:wrap;font-size:11px}
.give-shortcuts a{border-bottom:1px solid #a0a78b;padding:0 0 7px;display:flex;gap:15px}
.giving-box{position:relative;padding:29px 32px 25px;background:#faf8ed;border:1px solid #c7cbb6;box-shadow:12px 14px 0 #d8d9bd66;border-radius:3px 42px 3px 3px;scroll-margin-top:125px}
.giving-box::before{content:"";position:absolute;inset:8px;border:1px solid #bbc2a52e;pointer-events:none;border-radius:2px 34px 2px 2px}
.giving-box-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:23px;position:relative}
.giving-box h2{font-size:27px;line-height:1.2}
.demo-chip{font-family:Manrope,sans-serif;display:inline-flex;gap:6px;align-items:center;font-size:9px;font-weight:600;letter-spacing:.07em;background:#ebe8d6;color:#5c6548;border:1px solid #bfc5ab;padding:6px 9px;border-radius:20px;white-space:nowrap}
.giving-modes{border:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:#e9ecdE;border-radius:5px;margin:0 0 24px}
.giving-modes legend,.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.giving-modes label{position:relative;cursor:pointer}
.giving-modes input{position:absolute;opacity:0;width:1px;height:1px}
.giving-modes span{display:block;text-align:center;padding:13px 4px;font-size:12px;border-radius:4px;transition:background .2s,color .2s,box-shadow .2s}
.giving-modes input:checked+span{background:var(--olive);color:#fffdf2;box-shadow:0 3px 8px #35402120}
.giving-modes input:focus-visible+span{outline:3px solid #a47b2d;outline-offset:3px}
.giving-field{display:flex;flex-direction:column;gap:9px;font-size:11px;font-weight:600;margin:0 0 18px}
.giving-field :is(input,select){background:transparent;color:#3d4729;border:1px solid #abb69a;border-radius:3px;padding:12px 13px;min-width:0;width:100%;font-size:14px;min-height:47px}
.giving-field input{font-size:23px;letter-spacing:-.02em}
.giving-field input[readonly]{background:#edeedc80;color:#586341}
.amount-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:15px}
.amount-presets button{border:1px solid #bbc4a8;border-radius:3px;min-height:43px;background:transparent;font-size:13px;color:var(--olive);transition:background .2s,transform .2s}
.amount-presets button[aria-pressed=true]{background:#e9c775;border-color:#bfa052;box-shadow:inset 0 0 0 1px #bfa052}
.amount-presets button:hover{transform:translateY(-2px);background:#f0deb3}
.giving-note{font-size:10px;line-height:1.6;color:#626e51;min-height:18px;margin:-5px 0 20px}
.giving-destination{margin:0 0 17px}
.fixed-destination{font-size:12px;line-height:1.7;margin-bottom:18px;min-height:48px;display:flex;align-items:center;border-block:1px solid #c6cdb850}
.giving-total{display:flex;align-items:baseline;gap:9px;border-top:1px solid #c6cdb8;padding-top:17px;margin-bottom:17px}
.giving-total output{font-family:'DM Serif Display',serif;font-size:42px;line-height:1;letter-spacing:-.04em}
.giving-total span{font-size:11px;color:#6c765b}
.giving-box .pill{width:100%;justify-content:space-between;border:0;font-size:12px;min-height:49px}
.demo-footnote{font-size:10px;line-height:1.6;text-align:center;margin-top:13px;color:#6b725e}
.giving-box noscript{display:block;padding:15px;font-size:13px}
.campaign-wrap{background:#e6e5d0;padding:62px 0;position:relative;overflow:hidden}
.campaign-wrap::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(105deg,transparent 0 12px,#7f89660a 12px 13px);pointer-events:none}
.campaign-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px;gap:20px}
.campaign-heading h2{font-size:40px;letter-spacing:-.035em}
.campaign-heading>span{font-size:10px;color:#66724d}
.christmas-card{display:grid;grid-template-columns:.86fr 1.14fr;background:#3d4729;color:#f4f0df;border-radius:3px 64px 3px 3px;overflow:hidden;position:relative}
.christmas-art{position:relative;min-height:430px;display:flex;align-items:center;justify-content:center;background:#e5bd69;overflow:hidden}
.christmas-art::before{content:"";position:absolute;inset:18px;border:1px solid #8f78394a;border-radius:140px 140px 3px 3px}
.christmas-art>svg{width:94%;height:auto;position:relative;max-height:355px;overflow:visible}
.christmas-art .gift-small{animation:gift-rock 6s ease-in-out infinite;transform-origin:300px 295px}
.christmas-art .gift-star{animation:star-glow 4s ease-in-out infinite;transform-origin:center;transform-box:fill-box}
.christmas-art .gift-star:nth-child(2){animation-delay:-2s}
.christmas-place{position:absolute;left:0;right:0;bottom:24px;text-align:center;font-size:9px;letter-spacing:.14em;color:#514d2f}
.christmas-copy{padding:40px 44px 36px}
.christmas-copy .demo-chip{background:#f3ead119;color:#e3e5cb;border-color:#a4b18a61;font-size:9px;margin-bottom:20px}
.christmas-copy h3{font-size:clamp(37px,3.6vw,52px);line-height:1.03;letter-spacing:-.04em}
.christmas-copy h3 em{color:#e5c783}
.christmas-copy>p{font-size:13px;line-height:1.85;color:#d8ddca;margin-top:20px;max-width:410px}
.campaign-goal{display:flex;gap:13px;align-items:baseline;margin-top:28px;flex-wrap:wrap}
.campaign-goal strong{font-family:'DM Serif Display',serif;font-size:36px;font-weight:400;line-height:1}
.campaign-goal span{font-size:10px;color:#cfdbb7}
.campaign-progress{display:block;border:0;height:5px;width:100%;margin-top:16px;background:#e0e7cb24;border-radius:8px;overflow:hidden}
.campaign-progress::-webkit-progress-bar{background:#e0e7cb24}
.campaign-progress::-webkit-progress-value{background:#e5c783}
.campaign-progress::-moz-progress-bar{background:#e5c783}
.campaign-meta{display:flex;justify-content:space-between;gap:14px;font-size:9px;color:#cbd6b9;margin:10px 0 24px}
.christmas-copy .pill{font-size:11px;min-height:48px;padding:14px 21px}
.company-section{padding:65px 0;position:relative;overflow:hidden}
.company-inner{display:grid;grid-template-columns:130px 1.3fr 1fr;gap:35px;align-items:center}
.company-mark{position:relative;width:120px;height:120px;display:grid;place-items:center}
.company-mark::before,.company-mark::after{content:"";position:absolute;inset:0;border:1px dashed #9d9260;border-radius:50%;animation:service-orbit 32s linear infinite}
.company-mark::after{inset:14px;border-style:solid;border-color:#aeb79c;animation-direction:reverse;border-radius:38% 55% 45% 50%}
.company-mark svg{width:57px;height:57px;stroke:#69784e;fill:none;stroke-width:1.3;animation:soft-float 7s ease-in-out infinite}
.company-copy .kicker{font-size:9px;margin-bottom:15px}
.company-copy h2{font-size:43px;line-height:1.08;letter-spacing:-.035em}
.company-copy h2 em{color:#788150}
.company-action>p{font-size:13px;color:#657052;line-height:1.8;margin-bottom:21px}
.company-action .pill{font-size:11px;min-height:49px}
.company-note{display:block;font-size:9px;color:#6a745d;line-height:1.7;margin-top:12px}
.giving-account{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0 40px;border-top:1px solid #c4cbb4;font-size:12px;color:#626c53}
.giving-account a{font-size:11px}
.home .service-dialog{border:1px solid #aeb69a;border-radius:4px 32px 4px 4px;background:#f5f1e4;color:var(--olive);width:min(92vw,520px);max-height:85vh;overflow-y:auto;box-shadow:0 25px 80px #14200c38;position:fixed;padding:35px!important}
.service-dialog::backdrop{background:#202b1dd1;backdrop-filter:blur(5px)}
.service-dialog .dialog-close{position:absolute;right:14px;top:12px;width:35px;height:35px;background:transparent;border:1px solid #c6ccb7;border-radius:50%;font-size:23px;line-height:1;color:#465632}
.service-dialog h2{font-size:37px!important;line-height:1.08;margin:22px 0!important}
.service-dialog>p:not(.kicker){font-size:13px!important;line-height:1.8;color:#61714c}
.home .service-dialog>p.summary-amount{font-family:'DM Serif Display',serif;font-size:55px!important;line-height:1.1;margin:20px 0 9px;color:var(--olive)!important}
.summary-destination{border-block:1px solid #b9c5a4;padding:14px 0;margin:18px 0;font-size:14px}
.service-dialog .pill{margin-top:20px;min-height:48px;font-size:11px;width:100%;justify-content:space-between}
.service-dialog button[disabled]{cursor:not-allowed;opacity:.75;background:#d5dac8;color:#586341;border:1px solid #aab696}
.dialog-edit{border:0;border-bottom:1px solid #8a9874;background:transparent;padding:7px 0;color:#53603e;font-size:12px;display:block;margin:12px auto 0}
.service-dialog .giving-field{margin-top:22px}
.sponsor-privacy{font-size:11px!important;padding-top:14px;margin-top:20px;border-top:1px solid #c5cbb8}
.service-psychology .service-hero{min-height:0;padding-top:40px;padding-bottom:55px}
.service-psychology .service-hero-copy>p:not(.kicker){font-size:15px;max-width:390px;line-height:1.8}
.service-psychology .service-hero-note{font-size:11px;line-height:1.7;max-width:400px}
.service-psychology .service-illustration{min-height:430px}
.care-illustration>svg{overflow:visible}
.care-illustration .care-sun{animation:soft-float 9s ease-in-out infinite}
.care-illustration .care-message{animation:soft-float 6s ease-in-out infinite;animation-delay:-2s}
.illustration-seal::before{content:"";position:absolute;inset:-9px;border:1px dashed #9c7e37;border-radius:50%;animation:service-orbit 22s linear infinite}
.illustration-seal::after{content:"";position:absolute;inset:-15px;border-top:1px solid #b7a36366;border-radius:50%;animation:service-orbit 34s linear infinite reverse}
.care-illustration .illustration-quote{font-size:28px;letter-spacing:-.02em}
.care-steps-section{background:#e5e7d5;padding:50px 0;position:relative;overflow:hidden}
.care-steps-section::before{content:"";position:absolute;width:340px;height:340px;border:1px dashed #a2ae846b;border-radius:40% 60% 48% 52%;right:-130px;top:-150px;animation:service-orbit 65s linear infinite;pointer-events:none}
.care-section-head{display:flex;align-items:center;gap:30px;justify-content:space-between;margin-bottom:32px}
.care-section-head h2{font-size:42px;letter-spacing:-.03em}
.care-section-head>p{font-size:11px;color:#67754e;max-width:275px;line-height:1.7}
.care-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;list-style:none;padding:0;counter-reset:care}
.care-steps li{position:relative;padding:22px 0 0;border-top:1px solid #b4bfa1;counter-increment:care}
.care-steps li::before{content:'0' counter(care);font-family:'DM Serif Display',serif;font-size:31px;color:#8e9b74;display:block;margin-bottom:12px}
.care-steps h3{font-size:26px;margin-bottom:10px}
.care-steps p{font-size:13px;line-height:1.8;color:#626f50;max-width:300px}
.care-access{padding:46px 0 0}
.care-access-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}
.care-access h2{font-size:33px}
.care-access-head>p{font-size:11px;line-height:1.6;max-width:370px;color:#64714f}
.care-options{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.care-option{padding:23px 22px;border:1px solid #c4cbb5;position:relative;background:#f5f2e3;overflow:hidden}
.care-option>span{font-size:18px;color:#899968;display:inline-block;animation:gentle-pulse 5s ease-in-out infinite}
.care-option:nth-child(2)>span{animation-delay:-2s}.care-option:nth-child(3)>span{animation-delay:-3s}
.care-option h3{font-size:24px;margin:10px 0 7px}
.care-option p{font-size:12px;color:#626f51;line-height:1.8}
.care-access>.line-link{font-size:11px;margin-top:22px}
.service-psychology .company-section{padding:55px 0}
.service-psychology .service-faq{padding-top:35px;padding-bottom:45px;border-top:1px solid #c3ccb3;gap:60px}
.service-psychology .service-faq h2{font-size:37px}
.service-psychology .faq-list summary{font-size:13px;padding:18px 0}
.service-psychology .faq-list details p{font-size:13px}
.service-psychology .service-faq .kicker{margin-bottom:15px}
@keyframes service-orbit{to{transform:rotate(360deg)}}
@keyframes soft-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes gentle-pulse{0%,100%{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1.04)}}
@keyframes star-glow{0%,100%{opacity:.45;transform:rotate(-7deg) scale(.9)}50%{opacity:1;transform:rotate(7deg) scale(1.05)}}
@keyframes gift-rock{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(3deg) translateY(-5px)}}
@media(min-width:1500px){.give-hero{gap:100px}.giving-box{max-width:530px;justify-self:end;width:100%}}
@media(max-width:1100px){.giving-box{padding:25px}.give-hero{gap:45px}.christmas-copy{padding:32px}.company-inner{grid-template-columns:95px 1fr 1fr;gap:25px}.company-mark{width:85px;height:85px}.company-mark svg{width:43px;height:43px}.company-copy h2{font-size:36px}.giving-modes span{font-size:11px}}
@media(max-width:800px){.give-hero{grid-template-columns:1fr 1fr;gap:30px;padding-top:36px}.service .give-intro h1{font-size:55px}.give-intro>p:not(.kicker){font-size:14px}.give-shortcuts{gap:15px;font-size:10px}.giving-box{padding:23px 20px}.giving-box h2{font-size:24px}.giving-box-top{gap:7px}.demo-chip{font-size:8px}.giving-modes span{font-size:10px}.christmas-copy{padding:28px}.christmas-art{min-height:390px}.christmas-copy h3{font-size:36px}.christmas-copy>p{font-size:12px}.company-inner{grid-template-columns:85px 1fr;gap:25px}.company-action{grid-column:2}.company-copy h2{font-size:38px}.company-action>p{margin-bottom:16px}.care-steps{gap:24px}.care-steps p{font-size:12px}.care-option{padding:20px 17px}.care-option h3{font-size:22px}.care-option p{font-size:11px}}
@media(max-width:680px){.service .give-intro h1{font-size:clamp(54px,12vw,74px);max-width:430px}.give-hero{grid-template-columns:1fr;gap:32px;padding:32px 0 50px}.give-intro>.kicker{font-size:9px;margin-bottom:20px}.give-intro>p:not(.kicker){font-size:14px;line-height:1.8;max-width:350px;margin-top:20px}.giving-hand{position:absolute;right:0;bottom:-4px;width:100px;height:65px;opacity:.6}.give-shortcuts{font-size:11px;max-width:220px;gap:12px 22px;margin-top:20px}.giving-box{margin-right:8px;padding:25px 22px;scroll-margin-top:100px}.giving-box h2{font-size:28px}.giving-modes span{font-size:12px;padding:13px 3px}.giving-box-top{margin-bottom:20px}.demo-chip{font-size:9px}.giving-field{font-size:12px}.giving-note{font-size:11px}.giving-field select{font-size:13px}.giving-total{padding-top:18px}.giving-total output{font-size:40px}.campaign-wrap{padding:43px 0}.campaign-heading{align-items:baseline;margin-bottom:23px}.campaign-heading h2{font-size:35px}.campaign-heading>span{font-size:9px}.christmas-card{grid-template-columns:1fr;border-top-right-radius:46px}.christmas-art{min-height:280px;max-height:320px}.christmas-art>svg{height:270px;width:90%}.christmas-art::before{inset:16px 25px;border-radius:140px 140px 3px 3px}.christmas-place{bottom:18px;font-size:8px}.christmas-copy{padding:28px 25px 30px}.christmas-copy h3{font-size:41px}.christmas-copy>p{font-size:13px;line-height:1.8;margin-top:18px}.christmas-copy .demo-chip{font-size:9px;margin-bottom:17px}.campaign-goal{margin-top:23px}.campaign-goal strong{font-size:38px}.campaign-meta{font-size:10px}.christmas-copy .pill{font-size:11px}.company-section,.service-psychology .company-section{padding:43px 0}.company-inner{grid-template-columns:65px 1fr;gap:18px}.company-mark{width:60px;height:60px;align-self:start;margin-top:32px}.company-mark::after{inset:9px}.company-mark svg{width:30px;height:30px}.company-copy .kicker{font-size:8px;margin-bottom:13px}.company-copy h2{font-size:36px}.company-action{grid-column:1/-1}.company-action>p{font-size:13px;margin-bottom:19px;max-width:390px}.company-note{font-size:10px;max-width:330px}.giving-account{display:block;padding:23px 0 35px;font-size:12px;line-height:1.7}.giving-account .line-link{margin-top:13px;font-size:11px}.service-dialog{padding:29px 24px!important}.service-dialog h2{font-size:34px!important}.service-dialog .giving-field select{font-size:12px}.service-psychology .service-hero{padding:31px 0 40px;gap:42px}.service-psychology .service-hero-copy>p:not(.kicker){font-size:14px;max-width:360px;margin-top:23px}.service-psychology .service-hero-note{font-size:11px;margin-top:24px}.service-psychology .service-illustration{min-height:370px}.care-illustration .illustration-quote{font-size:26px}.illustration-seal::before{inset:-7px}.illustration-seal::after{inset:-12px}.care-steps-section{padding:40px 0}.care-section-head{display:block;margin-bottom:25px}.care-section-head h2{font-size:39px}.care-section-head>p{font-size:12px;margin-top:13px;max-width:100%}.care-steps{grid-template-columns:1fr;gap:20px}.care-steps li{padding:20px 0 0 47px}.care-steps li::before{position:absolute;left:0;top:20px;font-size:29px}.care-steps h3{font-size:27px}.care-steps p{font-size:13px;max-width:100%}.care-access{padding-top:38px}.care-access-head{display:block}.care-access h2{font-size:33px}.care-access-head>p{font-size:12px;margin-top:14px;max-width:100%}.care-options{grid-template-columns:1fr;gap:12px}.care-option{padding:21px 23px 21px 60px}.care-option>span{position:absolute;left:23px;top:25px}.care-option h3{font-size:26px;margin:0 0 7px}.care-option p{font-size:13px}.service-psychology .service-faq{padding:32px 0 37px;gap:25px}.service-psychology .service-faq h2{font-size:35px}.service-psychology .service-faq .kicker{font-size:8px}}
@media(max-width:370px){.giving-box{padding-inline:18px;box-shadow:7px 9px 0 #d8d9bd66}.giving-box h2{font-size:25px}.giving-box-top .demo-chip{font-size:8px;padding:5px 7px}.giving-modes span{font-size:11px}.amount-presets{gap:6px}.give-shortcuts{font-size:10px}.giving-hand{width:80px;right:-4px}.christmas-copy{padding-inline:23px}.christmas-copy h3{font-size:36px}.company-copy h2{font-size:31px}.company-inner{grid-template-columns:53px 1fr;gap:16px}.company-mark{width:49px;height:49px}.service-dialog h2{font-size:30px!important}}
@media(prefers-reduced-motion:reduce){.service *, .service *::before,.service *::after{animation:none!important;transition:none!important}}
.giving-box #aportar,.giving-box #citas{position:absolute;left:0;top:0;scroll-margin-top:125px}
@media(max-width:680px){.giving-box #aportar,.giving-box #citas{scroll-margin-top:100px}.home .service-dialog{padding:29px 24px!important}}
/* Visible orbit on the seal; the words remain still. */
.illustration-seal::after{inset:-15px;border:2px solid transparent;border-top-color:#a58b3f;border-right-color:#b7a36366;animation-duration:16s}
.give-hero,.service-hero{position:relative;isolation:isolate}
.service #hero-particles{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
/* Keep the orbit inside the narrow illustration and align wrapped mode labels. */
.giving-modes label{display:grid}
.giving-modes span{display:grid;place-items:center;line-height:1.3;min-height:46px}
@media(max-width:680px){.service-psychology .service-hero{overflow:clip}.service-psychology .illustration-seal{right:18px}}
/* Clip only the rotating decoration's invisible bounding box at all widths. */
.service-psychology .service-hero{overflow:clip}
.service-psychology .illustration-seal{right:20px}
