/* ============================================================
   FULL PAGE MENU
   Anchor Uptime Theme
   ============================================================ */

.fullpage-menu {
	position:   fixed;
	left:       0;
	right:      0;
	bottom:     0;
	z-index:    299;
	background: var(--bg);
	display:    flex;
	flex-direction: column;
	padding:    48px 40px 40px;

	/* Sweep animation — clip from top */
	clip-path:  inset(0 0 100% 0);
	transition: clip-path .5s cubic-bezier(.77, 0, .175, 1);
	pointer-events: none;
	overflow:   auto;
}

/* Desktop: starts below 62px header */
@media (min-width: 768px) {
	.fullpage-menu { top: 62px; }
}

/* Mobile: starts below both bars (40 + 54 = 94px) */
@media (max-width: 767px) {
	.fullpage-menu { top: 94px; }
}

.fullpage-menu.open {
	clip-path:      inset(0 0 0% 0);
	pointer-events: all;
}

/* ── Nav links ── */
.fpm-links {
	display:        flex;
	flex-direction: column;
	flex:           1;
	justify-content: center;
	max-width:      800px;
}

.fpm-links a {
	font-family:     var(--display);
	font-weight:     800;
	font-size:       clamp(26px, 6.5vw, 52px);
	letter-spacing:  -1.5px;
	line-height:     1.1;
	color:           var(--faint);
	text-decoration: none;
	padding:         11px 0;
	border-bottom:   1px solid var(--border);
	display:         flex;
	align-items:     center;
	justify-content: space-between;

	/* Stagger in */
	opacity:   0;
	transform: translateY(18px);
	transition: color .2s, opacity .4s ease, transform .4s ease;
}

.fpm-links a:last-child { border-bottom: none; }
.fpm-links a:hover      { color: #fff; }
.fpm-links a.active     { color: var(--indigo); }

.fpm-arrow {
	opacity:    0;
	transform:  translateX(-8px);
	transition: opacity .2s, transform .2s;
	flex-shrink: 0;
}

.fpm-links a:hover .fpm-arrow {
	opacity:   1;
	transform: translateX(0);
}

/* Stagger delays */
.fullpage-menu.open .fpm-links a              { opacity: 1; transform: translateY(0); }
.fullpage-menu.open .fpm-links a:nth-child(1) { transition-delay: .10s; }
.fullpage-menu.open .fpm-links a:nth-child(2) { transition-delay: .16s; }
.fullpage-menu.open .fpm-links a:nth-child(3) { transition-delay: .22s; }
.fullpage-menu.open .fpm-links a:nth-child(4) { transition-delay: .28s; }
.fullpage-menu.open .fpm-links a:nth-child(5) { transition-delay: .34s; }

/* ── Bottom bar ── */
.fpm-bottom {
	display:         flex;
	align-items:     center;
	justify-content: space-between;
	flex-wrap:       wrap;
	gap:             14px;
	padding-top:     24px;
	border-top:      1px solid var(--border);
	opacity:         0;
	transform:       translateY(10px);
	transition:      opacity .4s ease .38s, transform .4s ease .38s;
}

.fullpage-menu.open .fpm-bottom {
	opacity:   1;
	transform: translateY(0);
}

.fpm-copy {
	font-family: var(--mono);
	font-size:   10px;
	color:       var(--faint);
}

/* ── Social links ── */
.fpm-social {
	display:     flex;
	align-items: center;
	gap:         8px;
}

.fpm-social-label {
	font-family:    var(--mono);
	font-size:      10px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color:          var(--faint);
	margin-right:   4px;
}

.fpm-social-link {
	width:          32px;
	height:         32px;
	border-radius:  100px;
	background:     var(--bg2);
	border:         1px solid var(--border2);
	display:        flex;
	align-items:    center;
	justify-content: center;
	color:          var(--muted);
	transition:     all .2s;
	text-decoration: none;
}

.fpm-social-link:hover {
	border-color: var(--indigo);
	color:        var(--text);
	background:   var(--indigo-soft);
}

@media (max-width: 480px) {
	.fullpage-menu { padding: 32px 20px 28px; }
}
