/* ——— Profile · the familiar Instagram rhythm, dressed in LA Doll pink ——— */
.social-page{background:var(--petal)}
.social-nav{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:14px max(5%,calc((100vw - 1100px)/2));background:#fdf2f6e8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.social-nav .wordmark{justify-self:start;font-size:22px}
.nav-tagline{font:italic 400 18px/1 var(--serif);color:var(--rose-ink)}
.social-nav .button{justify-self:end}
.social-page main{max-width:975px;margin:0 auto;padding:0 20px}

/* Profile header */
.profile-head{display:grid;grid-template-columns:290px minmax(0,1fr);grid-template-areas:"avatar top" "avatar stats" "avatar bio";align-items:start;row-gap:20px;padding:64px 0 44px}
.avatar-wrap{grid-area:avatar;position:relative;justify-self:center;align-self:center}
.profile-avatar{width:168px;height:168px;border-radius:50%;padding:5px;background:var(--petal);box-shadow:0 0 0 2px var(--wine),0 18px 40px -24px #3a0d1c80}
.profile-avatar img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 46%;background:#fdeefe}
.avatar-badge{position:absolute;right:6px;bottom:8px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--wine);color:var(--white);font-size:16px;border:4px solid var(--petal)}
.ig-note{position:absolute;z-index:2;left:-26px;top:-40px;display:flex;align-items:center;gap:6px;max-width:190px;margin:0;padding:8px 14px 8px 8px;border-radius:18px;background:var(--white);font:500 12px/1.25 var(--sans);color:var(--cherry);box-shadow:0 10px 26px -12px #3a0d1c66}
.ig-note:after{content:'';position:absolute;left:44px;bottom:-9px;width:12px;height:12px;border-radius:50%;background:var(--white);box-shadow:0 6px 12px -8px #3a0d1c66}
.ig-note img{width:24px;height:auto;flex:none}
.profile-top{grid-area:top;display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px}
.profile-handle{margin:0;font:500 22px/1.2 var(--sans);letter-spacing:-.01em;color:var(--cherry)}
.profile-actions{display:flex;gap:8px}
.profile-actions .button,.profile-actions .outline-button{min-height:38px;padding:8px 18px;font-size:13px}
.profile-stats{grid-area:stats;display:flex;gap:40px;list-style:none;margin:0;padding:0;font-size:15px;color:var(--muted)}
.profile-stats b{font-weight:600;color:var(--cherry);margin-right:4px}
.profile-bio{grid-area:bio;font-size:15px;line-height:1.55}
.profile-bio h1{font-size:30px;letter-spacing:-.01em;line-height:1.1;color:var(--cherry)}
.profile-bio h1 em{color:var(--rose)}
.bio-category{margin:4px 0 8px;font-size:13px;color:var(--muted)}
.profile-bio p:not(.bio-category){margin:0 0 6px}
.paylater{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:max-content;max-width:100%;margin:10px 0 12px!important;padding:10px 18px 11px;border-radius:18px;background:var(--blush);border:1px solid var(--line);font-size:13px;color:var(--wine)}
.paylater b{font:italic 500 16px/1 var(--serif);color:var(--cherry)}
.paylater-center{align-items:center;margin:0 auto 26px!important;background:var(--white)}
.bio-link{display:flex;width:max-content;align-items:center;gap:6px;font-weight:600;color:var(--wine)}
.bio-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.bio-link:hover{color:var(--rose)}

/* Highlights — exact profile order */
.highlights{display:flex;gap:34px;overflow-x:auto;padding:6px 32px 40px;scrollbar-width:none}
.highlights::-webkit-scrollbar{display:none}
.highlight{flex:none;width:88px;text-align:center;border-radius:12px}
.highlight-ring{display:block;width:88px;height:88px;border-radius:50%;padding:4px;background:var(--petal);box-shadow:0 0 0 1.5px #d9a5b8;transition:transform .35s var(--ease),box-shadow .35s}
.highlight-ring img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}
.highlight:hover .highlight-ring{transform:translateY(-3px);box-shadow:0 0 0 2px var(--rose)}
.highlight-book .highlight-ring{box-shadow:0 0 0 2px var(--wine)}
.highlight strong{display:block;margin-top:10px;font-size:12px;font-weight:600;white-space:nowrap;color:var(--cherry)}

/* Tabs */
.profile-tabs{display:flex;justify-content:center;gap:60px;border-top:1px solid var(--line)}
.profile-tabs a{display:flex;align-items:center;gap:8px;margin-top:-1px;padding:16px 0;border-top:1px solid transparent;font:600 11px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.profile-tabs a.selected{border-top-color:var(--cherry);color:var(--cherry)}
.profile-tabs svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}

/* Grid — three columns, profile order */
.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.profile-post{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;background:var(--blush)}
.profile-post img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.profile-post:after{content:'View on Instagram ↗';position:absolute;inset:0;display:grid;place-items:center;background:#3a0d1c59;color:var(--white);font:500 12px/1 var(--sans);letter-spacing:.08em;opacity:0;transition:opacity .3s}
.profile-post:hover img{transform:scale(1.035)}
.profile-post:hover:after,.profile-post:focus-visible:after{opacity:1}
.profile-post:focus-visible{outline-offset:-4px}
.reel{position:absolute;z-index:1;top:10px;right:10px;width:18px;height:18px;fill:var(--white);filter:drop-shadow(0 1px 3px #3a0d1c80)}
.grid-note{margin:16px 0 0;text-align:center;font-size:12px;color:var(--muted)}
.grid-note a{text-decoration:underline;text-underline-offset:3px}

/* Booking invitation */
.profile-booking{margin:64px 0 80px;padding:64px 24px 68px;border-radius:32px;background:var(--blush);text-align:center}
.profile-booking h2{font-size:clamp(40px,5.6vw,60px);line-height:1;color:var(--cherry);margin:0 0 16px}
.profile-booking>p:not(.eyebrow){font-size:13px;letter-spacing:.04em;color:var(--muted);margin:0 0 26px}
.social-page footer{border-top:1px solid var(--line);padding-inline:max(5%,calc((100vw - 1100px)/2))}

@media(max-width:860px){.nav-tagline{display:none}.social-nav{grid-template-columns:1fr auto}}
@media(max-width:735px){
  .social-nav{padding:12px 16px;grid-template-columns:1fr;justify-items:center}
  .social-nav .button{display:none}
  .social-nav .wordmark{font-size:19px}
  .social-nav .wordmark span{font-size:6.5px;margin-top:5px}
  .social-page main{padding:0}
  .profile-head{grid-template-columns:96px minmax(0,1fr);grid-template-areas:"avatar handle" "avatar stats" "bio bio" "actions actions";column-gap:22px;row-gap:4px;padding:34px 16px 18px}
  .avatar-wrap{justify-self:start;align-self:center}
  .profile-avatar{width:92px;height:92px;padding:3px;box-shadow:0 0 0 1.5px var(--wine)}
  .avatar-badge{width:28px;height:28px;font-size:12px;border-width:3px;right:-2px;bottom:-2px}
  .ig-note{left:-4px;top:-32px;max-width:none;white-space:nowrap;font-size:11px;padding:6px 12px 6px 6px}
  .ig-note img{width:20px}
  .ig-note:after{left:30px}
  .profile-top{display:contents}
  .profile-handle{grid-area:handle;align-self:end;font-size:18px;font-weight:600}
  .profile-stats{align-self:start;gap:0;justify-content:space-between;margin-top:6px;font-size:12px}
  .profile-stats li{display:flex;flex-direction:column;line-height:1.25}
  .profile-stats b{font-size:17px;margin:0}
  .profile-bio{margin-top:16px;font-size:14px}
  .profile-bio h1{font-size:24px}
  .profile-actions{grid-area:actions;display:grid;grid-template-columns:1fr 1fr;margin-top:14px}
  .profile-actions .button,.profile-actions .outline-button{min-height:40px;padding:8px 10px;font-size:13px}
  .highlights{gap:16px;padding:10px 16px 22px}
  .highlight{width:70px}
  .highlight-ring{width:70px;height:70px;padding:3px}
  .highlight strong{font-size:11px;margin-top:7px}
  .profile-tabs{gap:0}
  .profile-tabs a{flex:1;justify-content:center;padding:14px 0;font-size:10px}
  .profile-grid{gap:2px}
  .profile-post:after{display:none}
  .reel{width:15px;height:15px;top:7px;right:7px}
  .grid-note{padding:0 16px}
  .profile-booking{margin:44px 12px 40px;padding:48px 20px 52px;border-radius:26px}
  .social-page footer{padding-bottom:110px}
  html[data-season=halloween] .profile-head{padding-top:58px}
  .social-page .mobile-book{transition:transform .45s var(--ease),opacity .45s}
  .book-ready:not(.show-book) .mobile-book{transform:translateY(160%);opacity:0}
}
