:root{color-scheme:light;--sky:#dff5ff;--blue:#138bd0;--deep:#1266a5;--pink:#f4529a;--yellow:#ffd84e;--ink:#164a78}
*{box-sizing:border-box}
:root{--ink:#164a78}
html{min-height:100%;background:#c8edff}
body{margin:0;min-height:100vh;color:var(--ink);font-family:"DM Sans",Arial,sans-serif;background:radial-gradient(ellipse at 50% 14%,#fff 0,#eaf9ff 38%,#bde9ff 100%);overflow-x:hidden}
.page{position:relative;isolation:isolate;width:min(100%,520px);min-height:100vh;margin:auto;padding:46px 26px 28px;display:flex;flex-direction:column;align-items:center}
.confetti{position:absolute;z-index:-1;pointer-events:none;font-size:34px;opacity:.72}.confetti-one{left:7%;top:100px;color:var(--pink);transform:rotate(-15deg)}.confetti-two{right:9%;top:205px;color:#ff8a48;font-size:26px}.confetti-three{left:10%;top:360px;color:#ffd02c;font-size:30px}.confetti-four{right:8%;top:430px;color:#8d68dd;font-size:24px}
.profile{text-align:center;width:100%}.photo-frame{position:relative;width:218px;height:218px;margin:0 auto 13px;padding:7px;border-radius:50%;background:linear-gradient(145deg,var(--yellow),var(--pink) 48%,var(--blue));box-shadow:0 10px 30px #166cad38}.profile-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 27%;border:5px solid #fff;border-radius:50%}.photo-star{position:absolute;display:grid;place-items:center;width:38px;height:38px;border:3px solid #fff;border-radius:50%;color:#fff;background:var(--pink);box-shadow:0 3px 12px #1c477633}.star-a{right:-4px;top:24px}.star-b{left:-9px;bottom:26px;background:#f5b900;color:#fff}
.ribbon{display:inline-block;margin:0 auto 10px;padding:7px 14px;border:2px solid white;border-radius:20px;background:var(--blue);color:white;font-size:10px;font-weight:700;letter-spacing:1px;box-shadow:0 4px 0 #0f69a4}
h1{font:700 31px "Playfair Display",Georgia,serif;letter-spacing:1.4px;margin:5px 0 0;color:var(--deep)}h1 em{font-style:italic;color:var(--pink)}.handle{font-size:13px;color:#537f9e;margin:5px 0 0}.bio{margin:13px auto 0;color:#24638d;font-size:15px;font-weight:600;line-height:1.6;max-width:310px}
.links{display:grid;gap:14px;width:100%;margin-top:27px}.link-card{display:flex;align-items:center;gap:13px;min-height:78px;padding:13px 15px;text-decoration:none;color:var(--ink);border:2px solid #fff;border-radius:19px;background:linear-gradient(110deg,#fff,#f1faff);box-shadow:0 6px 0 #92cce8,0 12px 22px #2975a51c;transition:transform .18s ease,box-shadow .18s ease}.link-card:hover{transform:translateY(-2px);box-shadow:0 8px 0 #92cce8,0 15px 24px #2975a52a}.link-card.primary{background:linear-gradient(110deg,#168dd0,#30b2e2);color:#fff;border-color:#fff;box-shadow:0 6px 0 #0e67a6,0 12px 24px #1679b83d}.icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border:2px solid #ffffffba;border-radius:50%;background:#ffffff25;color:inherit;font-size:23px}.link-copy{display:grid;gap:4px;flex:1}.link-copy strong{font-size:15px;font-weight:700}.link-copy small{font-size:12px;color:#e9f8ff}.secondary .link-copy small{color:#668ba3}.arrow{font-size:21px;color:inherit;opacity:.9}
footer{margin-top:auto;padding-top:42px;color:#5682a0;font-size:10px;font-weight:700;letter-spacing:1.3px}.heart{color:var(--pink)}.dot{padding:0 5px;color:#8eb1c6}
@media(min-width:600px){.page{padding-top:58px}.links{margin-top:30px}}
@media(max-width:360px){.page{padding-left:20px;padding-right:20px}.photo-frame{width:196px;height:196px}.link-card{padding:12px;gap:11px}.link-copy strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
