:root{--cherry:#9E2735;--cream:#F4EFE6;--black:#202020;--blue:#8097A6;--muted:#68625C;--edge:#DED8CE;--white:#FFFCF7}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--cream);color:var(--black);font-family:Arial,Helvetica,sans-serif;min-height:100vh}.links{width:min(calc(100% - 40px),400px);margin:0 auto;padding:38px 0 24px}a{color:inherit}.profile{text-align:center;margin-bottom:30px}.photo-frame{width:108px;height:108px;margin:0 auto 17px;padding:3px;background:var(--white);clip-path:polygon(50% 0,63% 33%,98% 36%,72% 59%,80% 95%,50% 77%,20% 95%,28% 59%,2% 36%,37% 33%);transform:rotate(-8deg)}.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 27%;clip-path:inherit;display:block}h1{font-family:'Arial Rounded MT Bold','Trebuchet MS',sans-serif;font-size:1.85rem;font-weight:900;letter-spacing:-.065em;line-height:1.2;margin:0 0 10px;color:var(--cherry);text-shadow:1px 2px 0 #DDD0C6}.profile p{font-size:.875rem;line-height:1.5;color:var(--muted);margin:0 0 10px}.handle{font-size:.8rem;text-decoration:none;color:var(--muted)}.handle:hover{color:var(--cherry)}.section-label{font-family:Georgia,serif;font-size:.75rem;letter-spacing:.13em;text-align:center;font-weight:400;color:var(--muted);margin:0 0 14px}.resources{display:grid;gap:11px}.resources .section-label{margin-bottom:2px}.link-card{display:flex;align-items:center;gap:13px;background:var(--white);padding:17px 18px;border:1px solid #E7E1D8;border-radius:15px;text-decoration:none;box-shadow:0 3px 8px #20202007;min-height:79px;transition:transform .15s,box-shadow .15s}.link-card:hover{transform:translateY(-2px);box-shadow:0 5px 12px #2020200d}.guide-card{padding:14px 17px;gap:15px}.guide-thumb{width:54px;height:72px;object-fit:cover;flex-shrink:0;border:1px solid #E7E1D8;border-radius:3px;transform:rotate(-4deg);box-shadow:2px 3px 0 #E9E1D5}.card-copy{flex:1;min-width:0}.card-title{font-family:Georgia,serif;font-size:1.1rem;line-height:1.3;display:block;margin-bottom:4px}.card-description{display:block;color:var(--muted);font-size:.8rem;line-height:1.5}.card-icon{width:27px;font-size:1.5rem;flex-shrink:0;text-align:center}.envelope{color:var(--blue)}.card-action{font-size:.7rem;letter-spacing:.06em;color:var(--cherry);flex-shrink:0}.plus{background:var(--cherry);color:var(--white);border-radius:50%;height:26px;width:26px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;letter-spacing:0}.support{margin-top:27px;padding:20px 0 0;border-top:1px solid var(--edge)}.support-heading{display:flex;gap:12px;align-items:center}.support-heading h2{font-family:Georgia,serif;font-weight:400;font-size:1.1rem;line-height:1.4;letter-spacing:-.015em;margin:0 0 4px}.support-heading h2 em{color:var(--cherry)}.support-heading p{font-size:.8rem;line-height:1.5;color:var(--muted);margin:0}.latte-options{display:flex;gap:10px;margin:16px 0 0 39px}.latte-options a{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:64px;padding:10px 15px;background:var(--cherry);border:1px solid var(--cherry);border-radius:9px;color:var(--white);text-decoration:none;font-size:.875rem;font-weight:600}.latte-options a:hover{background:#7D1E29;border-color:#7D1E29}.latte-options .custom{color:var(--cherry);background:transparent;font-weight:400}.latte-options .custom:hover{background:#EAE3D8;border-color:var(--cherry)}a:focus-visible{outline:3px solid var(--blue);outline-offset:4px}footer{text-align:center;margin-top:34px;color:var(--muted);font-size:.75rem}footer a{display:block;font-size:.8rem;color:var(--cherry);text-decoration:none;margin-bottom:15px}footer span{letter-spacing:.03em}@media(max-width:360px){.links{width:calc(100% - 30px);padding-top:28px}.link-card{gap:10px;padding:14px}.guide-card{gap:12px}.card-title{font-size:1rem}.latte-options{margin-left:0;justify-content:center}.support-heading h2{font-size:1rem}}@media(prefers-reduced-motion:reduce){.link-card{transition:none}.link-card:hover{transform:none}}
/* Refined profile, compact cards, and social buttons. */
.photo-frame{width:180px;height:180px;padding:5px;background:var(--cherry);margin-bottom:19px;transform:rotate(-6deg)}
.photo-inner{width:100%;height:100%;position:relative;overflow:hidden;background:var(--cream);clip-path:inherit}
.photo-frame img{position:absolute;width:110px;height:147px;left:50%;top:35px;transform:translateX(-50%) rotate(6deg);object-fit:contain;object-position:center;clip-path:none}
.guide-card{gap:13px;padding:17px 18px;min-height:91px}
.support{background:var(--white);border:1px solid #E7E1D8;box-shadow:0 3px 8px #20202007;border-radius:15px;margin-top:11px;padding:17px 18px 18px}
.latte-image{width:40px;height:48px;object-fit:contain;flex-shrink:0;border-radius:7px;mix-blend-mode:multiply}
.support-heading{gap:12px}.latte-options{margin-left:52px;gap:9px}
.latte-options a{border-radius:20px;min-width:61px;padding:10px 13px}
.social-links{display:flex;justify-content:center;gap:13px;margin-bottom:19px}
.social-links a,.social-links button{padding:0;margin:0;width:43px;height:43px;display:flex;align-items:center;justify-content:center;border:1px solid var(--edge);border-radius:50%;background:var(--white);color:var(--black);cursor:pointer}
.social-links svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.social-links svg .fill{fill:currentColor;stroke:none}
.social-links a:hover{color:var(--cherry);border-color:var(--cherry)}.social-links button:disabled{opacity:.42;cursor:default}
@media(max-width:360px){.guide-card{padding:14px;gap:10px}.latte-options{margin-left:0}.photo-frame{width:170px;height:170px}.photo-frame img{width:104px;height:139px;top:33px}}

/* Full photo fill and roomier normal-weight payment buttons. */
.photo-frame{clip-path:polygon(50% 0,73% 22%,100% 30%,80% 61%,83% 100%,50% 83%,17% 100%,20% 61%,0 30%,27% 22%)}
.photo-inner{clip-path:inherit}.photo-frame img{position:static;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;transform:none;clip-path:none}
.latte-options{margin-left:0;justify-content:center;gap:10px}.latte-options a{font-weight:400;padding:10px 22px;min-width:73px}.latte-options .custom{font-weight:400}
@media(max-width:360px){.photo-frame img{width:100%;height:100%;object-position:50% 0}.latte-options{gap:8px}.latte-options a{padding:10px 18px;min-width:65px}}

.latte-image{mix-blend-mode:normal;border-radius:0}

/* Circular portrait and custom-amount disclosure. */
.photo-frame{clip-path:none;border-radius:50%;transform:none;width:180px;height:180px;padding:5px}
.photo-inner{clip-path:none;border-radius:50%;overflow:hidden}.photo-frame img{clip-path:none;width:100%;height:100%;object-fit:cover;object-position:50% 0;transform:none}
.latte-options button,.go-button{font:inherit;font-size:.875rem;font-weight:400;padding:10px 22px;min-height:44px;border:1px solid var(--cherry);border-radius:20px;background:var(--cherry);color:var(--white);cursor:pointer}
.latte-options button.custom{background:transparent;color:var(--cherry)}.latte-options button.custom:hover,.latte-options button.custom[aria-expanded="true"]{background:#EAE3D8}
.custom-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:12px}.custom-form[hidden]{display:none}
.amount-entry{display:flex;align-items:center;gap:9px;border:1px solid var(--edge);border-radius:20px;padding:0 15px;background:var(--cream);min-width:0}.amount-entry>span{color:var(--muted);font-size:1rem}
.amount-entry input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--black);font:inherit;font-size:1rem;padding:12px 0}.amount-entry:focus-within{outline:2px solid var(--blue);outline-offset:2px}.go-button:hover{background:#7D1E29}
.amount-error{grid-column:1/-1;font-size:.8rem;line-height:1.5;color:var(--cherry);margin:0}.amount-error:empty{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}@media(max-width:360px){.photo-frame{width:170px;height:170px}.latte-options button{padding:10px 18px}}

.download-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

button.guide-card{width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer}
