:root{
  --bg:#faf6f3;--cream:#fffaf7;--rose:#b98786;--rose2:#e2c2bb;--rose3:#f5e7e2;
  --text:#4d3637;--sub:#826d6a;--stroke:#e8d9d2;--green:#238b64;
}
*{box-sizing:border-box}
html{min-height:100%;background:var(--bg)}
body{margin:0;min-height:100%;font-family:"DM Sans",Arial,sans-serif;color:var(--text);background:radial-gradient(ellipse 58% 25% at 21% 6%, #f1e2dd 0%,transparent 100%),radial-gradient(ellipse 45% 30% at 85% 93%,#f0dbd8 0%,transparent 100%),#faf6f3;overflow-x:hidden}
a{-webkit-tap-highlight-color:transparent}
.background-ornament{position:fixed;z-index:0;pointer-events:none;opacity:.55}
.background-ornament--a{width:clamp(340px,60vw,750px);height:clamp(340px,60vw,750px);border-radius:43% 57% 70% 30% / 51% 43% 57% 49%;border:1px solid #dcbdb5;top:-31%;left:-24%;transform:rotate(17deg)}
.background-ornament--b{width:clamp(300px,50vw,560px);height:clamp(300px,50vw,560px);border-radius:63% 37% 39% 61% / 46% 67% 33% 54%;border:1px solid #dec5bf;bottom:-30%;right:-17%;transform:rotate(-14deg)}
.page{position:relative;z-index:1;isolation:isolate;width:min(100%,480px);min-height:100vh;min-height:100svh;margin:0 auto;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);display:flex;align-items:center;justify-content:center}
.content{position:relative;width:100%;padding:19px clamp(22px,6vw,39px) 15px;text-align:center;animation:appear .85s both}
.signature{height:37px;display:flex;align-items:center;justify-content:center;margin:0 0 2px}
.signature img{width:36px;height:36px;object-fit:contain;opacity:.78}
.profile{position:relative;width:154px;height:154px;margin:0 auto 16px}
.portrait-halo{position:absolute;inset:-9px -11px -10px -11px;background:#eaccc4;border:1px solid #d7b5ad;border-radius:47% 53% 44% 56% / 56% 41% 59% 44%;transform:rotate(-13deg);animation:haloDrift 9s ease-in-out infinite alternate}
.portrait-frame{position:relative;width:100%;height:100%;overflow:hidden;background:#dfc8b5;border:3px solid #fff8f4;box-shadow:0 15px 32px #8b615a2c;border-radius:46% 54% 55% 45% / 55% 45% 55% 45%;transform:rotate(2deg)}
.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 24%;transform:rotate(-2deg) scale(1.07)}
.profile-spark{position:absolute;right:-19px;bottom:10px;color:#b88d85;opacity:.85;font-size:15px}
.eyebrow{margin:0 0 5px;font-family:Manrope,sans-serif;font-weight:700;color:#a87576;font-size:9px;letter-spacing:.27em}
h1{font-family:"Playfair Display",Georgia,serif;font-weight:500;font-size:clamp(30px,8vw,37px);line-height:1.14;letter-spacing:-.055em;margin:0 0 6px;white-space:nowrap}
h1 em{font-weight:400;font-style:italic;color:#a16f72}
.specialty{font-size:12.5px;font-weight:600;letter-spacing:.04em;margin:0 0 7px;color:#6b5554}
.specialty span{color:#bc9288;margin:0 4px}
.credential{display:flex;align-items:center;justify-content:center;gap:10px;letter-spacing:.04em;font-weight:550;font-size:10.5px;color:#99847e;margin:0}
.credential-divider{width:1px;height:12px;background:#d2b4aa}
.separator{display:flex;align-items:center;justify-content:center;gap:12px;margin:14px auto 12px;color:#d9afa7}
.separator span{height:1px;width:32px;background:linear-gradient(90deg,transparent,#e0c5bd)}
.separator span:last-child{transform:rotate(180deg)}
.separator i{font-size:9px}
.welcome{font-family:"Playfair Display",Georgia,serif;font-size:17px;line-height:1.2;color:#5d4546;margin:0 0 5px}
.invitation{font-size:12.5px;font-weight:500;color:#927877;margin:0 0 19px}
.links{display:grid;gap:10px;text-align:left}
.link-button{position:relative;display:flex;align-items:center;gap:14px;min-width:0;min-height:64px;border:1px solid #e7d6d0;border-radius:24px 30px 22px 28px / 26px 21px 27px 23px;padding:10px 15px;text-decoration:none;color:#593f41;background:linear-gradient(110deg,#fffdfaeb,#fff9f7d9);box-shadow:0 7px 18px #8f77740b;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .24s ease,background .24s ease,box-shadow .24s ease,border-color .24s ease}
.link-button:nth-child(2){border-radius:28px 22px 29px 22px / 24px 28px 22px 26px}
.link-button:nth-child(3){border-radius:24px 30px 21px 28px / 27px 22px 29px 22px}
.link-button:nth-child(4){border-radius:29px 22px 27px 25px / 26px 29px 22px 26px}
.link-button--whatsapp{border-color:#c4d9cd;background:linear-gradient(110deg,#f9fffb,#f0faf4);box-shadow:0 10px 23px #1f8d6811}
.link-icon{flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;border-radius:17px 17px 14px 20px;background:#f3e5df;color:#b67e80;font-size:19px}
.link-button--whatsapp .link-icon{background:#e0f1e7;color:#16845b;font-size:23px}
.link-copy{display:grid;gap:3px;min-width:0}
.link-copy strong{font-family:Manrope,sans-serif;font-size:14.5px;font-weight:700;line-height:1.2;letter-spacing:.004em}
.link-copy small{color:#967e79;font-size:11.5px;font-weight:500;line-height:1.28}
.link-button--whatsapp .link-copy strong{color:#236749}
.link-button--whatsapp .link-copy small{color:#568171}
.link-arrow{margin-left:auto;color:#bda5a0;font-size:13px;opacity:.8;transition:transform .25s ease}
.link-button--whatsapp .link-arrow{color:#31845d}
.link-button:is(:hover,:focus-visible){border-color:#cfa8a2;box-shadow:0 13px 24px #8f77742b;transform:translateY(-3px) scale(1.008)}
.link-button--whatsapp:is(:hover,:focus-visible){border-color:#70ae8b;box-shadow:0 13px 26px #31845d27}
.link-button:is(:hover,:focus-visible) .link-arrow{transform:translate(2px,-2px)}
.link-button:focus-visible{outline:3px solid #a65f62;outline-offset:3px}
.footer-line{height:1px;width:48px;margin:19px auto 9px;background:#dac2b9}
footer p{margin:0;font-family:"Playfair Display",Georgia,serif;color:#a08884;font-size:12px}
.footer-heart{color:#ac7e7b;font-size:18px;vertical-align:-1px;padding-left:3px}
@keyframes appear{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@keyframes haloDrift{from{transform:rotate(-13deg)}to{transform:rotate(7deg)}}
@media(min-width:700px){body{background:radial-gradient(circle at 25% 25%,#ebdad7,transparent 32%),radial-gradient(circle at 85% 75%,#f0ddda,transparent 32%),#f9f5f2}.page{background:linear-gradient(165deg,#fff8f4d1 0%,#f8f0ecdb 100%);box-shadow:0 0 110px #b18d7f22,0 0 0 1px #eadcd4}.content{padding-left:45px;padding-right:45px}}
@media(max-width:370px){.content{padding-left:21px;padding-right:21px}h1{font-size:clamp(26px,8.4vw,30px)}.link-button{gap:10px}.link-copy strong{font-size:14px}}
@media(max-height:780px){.content{padding-top:12px;padding-bottom:11px}.signature{height:26px}.signature img{width:29px;height:29px}.profile{width:125px;height:125px;margin-bottom:11px}.separator{margin:9px auto}.invitation{margin-bottom:13px}.links{gap:8px}.link-button{min-height:58px;padding:8px 12px}.link-icon{height:39px;width:39px;flex-basis:39px;font-size:17px}.link-button--whatsapp .link-icon{font-size:20px}.footer-line{margin-top:12px}.welcome{font-size:16px}}
@media(max-height:655px){.content{padding-top:7px;padding-bottom:7px}.signature{height:20px;margin-bottom:0}.signature img{height:23px;width:23px}.profile{width:95px;height:95px;margin-bottom:8px}.eyebrow{font-size:8px;margin-bottom:2px}h1{font-size:clamp(25px,7vw,31px);margin-bottom:3px}.specialty{font-size:11px;margin-bottom:4px}.credential{font-size:9.5px}.separator{margin:7px auto}.welcome{font-size:15px}.invitation{font-size:11px;margin-bottom:10px}.links{gap:7px}.link-button{min-height:49px;padding:6px 11px;gap:11px;border-radius:20px}.link-icon{width:34px;height:34px;flex-basis:34px;font-size:16px;border-radius:12px}.link-button--whatsapp .link-icon{font-size:19px}.link-copy strong{font-size:13.5px}.link-copy small{font-size:10.5px}.footer-line{margin:8px auto 6px}footer p{font-size:11px}}
@media(max-height:560px){.page{align-items:flex-start}.content{padding-top:4px}.profile{width:80px;height:80px;margin-bottom:6px}.signature{height:17px}.signature img{width:20px;height:20px}.separator{margin:5px auto}.invitation{margin-bottom:7px}.links{gap:5px}.link-button{min-height:45px}.footer-line{margin:6px auto 5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Font Awesome Free SVG: ícones autocontidos, sem dependência de arquivos de fontes. */
.fa-icon{display:inline-block;width:1em;height:1em;background-color:currentColor;mask:var(--icon) no-repeat center/contain;-webkit-mask:var(--icon) no-repeat center/contain;vertical-align:-.08em}
.fa-whatsapp{--icon:url('assets/icons/whatsapp.svg')}
.fa-instagram{--icon:url('assets/icons/instagram.svg')}
.fa-location-dot{--icon:url('assets/icons/location-dot.svg')}
.fa-globe{--icon:url('assets/icons/globe.svg')}
.fa-arrow-up-right-from-square{--icon:url('assets/icons/arrow-up-right-from-square.svg')}
.fa-heart{--icon:url('assets/icons/heart.svg')}
.fa-star{--icon:url('assets/icons/star.svg')}
