/* The approved Astro profile composition, fed exclusively by the visitor API. */
.presentation-page { min-height:100vh; display:flex; flex-direction:column; }
.presentation-page .visitor-header { width:100%; max-width:none; justify-content:flex-start; padding:12px 18px; position:relative; z-index:2; }
.presentation-page .visitor-main { flex:1; display:flex; flex-direction:column; justify-content:center; width:min(100%,560px); padding:56px 24px 24px; }
.presentation-page #visitor-profile { width:100%; }
.presentation-page .visitor-identity { margin-bottom:20px; }
.presentation-page .visitor-initial { width:96px; height:96px; margin-bottom:16px; border:2px solid #ffffff33; box-shadow:0 12px 28px #0006; }
.presentation-page .visitor-initial img { width:100%; height:100%; }
.presentation-page .visitor-name { font-size:clamp(24px,4vw,28px); margin-bottom:8px; }
.presentation-page .visitor-description { margin:12px 0 0; font-size:14px; line-height:1.65; }
.presentation-page .visitor-socials { margin-bottom:20px; }
.presentation-page .visitor-social { width:40px; height:40px; flex-basis:40px; }
.presentation-page .visitor-blocks { width:100%; }
.presentation-page .visitor-link { min-height:48px; border-color:#ffffff26; background:#ffffff12; color:#fff; font-size:14px; font-weight:600; transition:background .16s ease,border-color .16s ease; }
.presentation-page .visitor-link:hover { background:#ffffff1d; border-color:#ffffff66; outline:none; }
/* Stark's legacy gradient stays in LinkStack; the new default presentation uses its neutral button. */
.presentation-page:not([data-profile-theme]) .visitor-link[data-block-id="673858906"] { background:#ffffff12 !important; color:#fff !important; border-radius:12px !important; }
.presentation-page:not([data-profile-theme]) .visitor-link[data-block-id="673858906"]:hover { background:#ffffff1d !important; }
.presentation-page:not([data-profile-theme]) .visitor-link[data-block-id="673858906"][data-backed] span { color:inherit; background:none; border-radius:0; padding:0; }
.presentation-page .visitor-status { font-size:14px; }
.presentation-footer { margin:0 auto; padding:24px; color:#98a9bf; font-size:12px; text-align:center; }
.presentation-footer strong { color:#e2e8f0; font-weight:600; }
.presentation-page[data-profile-theme] .presentation-footer { color:var(--pt-fg); background:var(--pt-bg); border-radius:12px; }
@media(max-width:480px){.presentation-page .visitor-main { padding:32px 20px 12px; }}
