.lg-hero {
position: relative;
padding: calc(var(--header-h, 84px) + 56px) 0 56px;
overflow: hidden;
}
.lg-hero__bg {
position: absolute;
inset: 0;
background:
radial-gradient(72% 120% at 12% 0%, rgba(30, 141, 233, 0.14), transparent 62%),
linear-gradient(180deg, var(--c-bg-2), var(--c-bg));
pointer-events: none;
}
.lg-hero .container {
position: relative;
z-index: 1;
}
.lg-hero__inner {
max-width: 62ch;
}
.lg-hero__lead {
margin: var(--space-md) 0 0;
font-size: var(--fs-lead);
line-height: 1.65;
color: var(--c-text-2);
}
.lg-hero__meta {
display: inline-flex;
align-items: center;
gap: 10px;
margin: var(--space-lg) 0 0;
padding: 8px 14px;
border: 1px solid var(--c-line-2);
border-radius: var(--radius-pill);
font-family: var(--font-mono);
font-size: 10px;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--c-text-3);
}
.lg-hero__meta time {
color: var(--c-accent);
} .lg-grid {
display: grid;
grid-template-columns: 300px minmax(0, 1fr);
gap: clamp(40px, 5vw, 72px);
align-items: start;
}
.lg-side {
min-width: 0;
}
.lg-side__sticky {
position: sticky;
top: calc(var(--header-h, 84px) + 28px);
display: grid;
gap: var(--space-md);
} .lg-nav {
border: 1px solid var(--c-line);
border-radius: var(--radius-md);
padding: 20px;
background: rgba(255, 255, 255, 0.015);
}
.lg-nav__title {
margin: 0 0 14px;
font-family: var(--font-mono);
font-size: 10px;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--c-text-3);
}
.lg-nav__list {
display: grid;
gap: 2px;
margin: 0;
padding: 0;
list-style: none;
}
.lg-nav__link {
display: block;
padding: 9px 12px;
border-radius: var(--radius-xs);
font-family: var(--font-ui);
font-size: var(--fs-xs);
font-weight: 600;
line-height: 1.4;
color: var(--c-text-2);
transition: color var(--dur-fast) ease, background-color var(--dur-fast) ease;
}
.lg-nav__link:hover {
color: var(--c-text);
background: rgba(255, 255, 255, 0.04);
}
.lg-nav__link.is-active {
color: var(--c-accent);
background: rgba(30, 141, 233, 0.1);
box-shadow: inset 2px 0 0 var(--c-accent);
} .lg-help {
border: 1px solid var(--c-line);
border-top-color: rgba(30, 141, 233, 0.5);
border-radius: var(--radius-md);
padding: 20px;
}
.lg-help__title {
margin: 0;
font-family: var(--font-ui);
font-size: var(--fs-sm);
font-weight: 700;
color: var(--c-text);
}
.lg-help__text {
margin: 8px 0 0;
font-size: var(--fs-2xs);
line-height: 1.65;
color: var(--c-text-3);
}
.lg-help__list {
display: grid;
gap: 6px;
margin: 14px 0 0;
padding: 0;
list-style: none;
font-size: var(--fs-2xs);
}
.lg-help__list a {
color: var(--c-text-2);
transition: color var(--dur-fast) ease;
}
.lg-help__list a:hover {
color: var(--c-accent);
} .lg-prose {
min-width: 0;
max-width: 78ch;
}
.lg-sec {
padding-bottom: var(--space-xl);
margin-bottom: var(--space-xl);
border-bottom: 1px solid var(--c-line);
}
.lg-sec:last-of-type {
border-bottom: 0;
margin-bottom: var(--space-lg);
}
.lg-sec__title {
display: flex;
align-items: baseline;
gap: 14px;
margin: 0 0 var(--space-sm);
font-family: var(--font-ui);
font-size: clamp(20px, 1.7vw, 26px);
font-weight: 700;
line-height: 1.25;
letter-spacing: -0.01em;
color: var(--c-text);
}
.lg-sec__num {
flex: none;
font-family: var(--font-mono);
font-size: 12px;
letter-spacing: 0.1em;
color: var(--c-accent);
}
.lg-p {
margin: 0 0 var(--space-sm);
font-size: var(--fs-body);
line-height: 1.75;
color: var(--c-text-2);
}
.lg-p:last-child {
margin-bottom: 0;
}
.lg-p strong,
.lg-ul strong,
.lg-dl dd strong {
color: var(--c-text);
font-weight: 600;
}
.lg-p a,
.lg-ul a,
.lg-dl a,
.lg-note a {
color: var(--c-accent);
border-bottom: 1px solid rgba(30, 141, 233, 0.35);
transition: border-color var(--dur-fast) ease;
}
.lg-p a:hover,
.lg-ul a:hover,
.lg-dl a:hover,
.lg-note a:hover {
border-bottom-color: var(--c-accent);
}
.lg-ul {
margin: 0 0 var(--space-sm);
padding: 0;
list-style: none;
display: grid;
gap: 10px;
}
.lg-ul li {
position: relative;
padding-left: 22px;
font-size: var(--fs-sm);
line-height: 1.7;
color: var(--c-text-2);
}
.lg-ul li::before {
content: "";
position: absolute;
top: 11px;
left: 4px;
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--c-accent);
opacity: 0.75;
}
.lg-dl {
display: grid;
grid-template-columns: minmax(150px, 220px) minmax(0, 1fr);
gap: 0;
margin: 0 0 var(--space-sm);
border-top: 1px solid var(--c-line);
}
.lg-dl dt {
padding: 12px 16px 12px 0;
border-bottom: 1px solid var(--c-line);
font-family: var(--font-ui);
font-size: var(--fs-xs);
font-weight: 700;
color: var(--c-text);
}
.lg-dl dd {
margin: 0;
padding: 12px 0;
border-bottom: 1px solid var(--c-line);
font-size: var(--fs-xs);
line-height: 1.7;
color: var(--c-text-2);
}
.lg-note {
margin: 0 0 var(--space-sm);
padding: 16px 18px;
border: 1px dashed var(--c-line-2);
border-left: 2px solid var(--c-accent);
border-radius: var(--radius-xs);
font-size: var(--fs-xs);
line-height: 1.7;
color: var(--c-text-2);
}
.lg-disclaimer {
margin: 0;
padding-top: var(--space-md);
border-top: 1px solid var(--c-line);
font-family: var(--font-mono);
font-size: 10px;
line-height: 1.9;
letter-spacing: 0.06em;
text-transform: uppercase;
color: var(--c-text-3);
} @media (max-width: 1024px) {
.lg-grid {
grid-template-columns: minmax(0, 1fr);
gap: var(--space-xl);
}
.lg-side__sticky {
position: static;
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 700px) {
.lg-side__sticky {
grid-template-columns: minmax(0, 1fr);
}
.lg-dl {
grid-template-columns: minmax(0, 1fr);
}
.lg-dl dt {
padding-bottom: 2px;
border-bottom: 0;
}
} .lg-hero .h1 {
font-size: clamp(32px, 3.2vw, 46px);
} .lg-inline-btn {
padding: 0;
border: 0;
border-bottom: 1px solid rgba(30, 141, 233, 0.35);
background: none;
font: inherit;
color: var(--c-accent);
cursor: pointer;
transition: border-color var(--dur-fast) ease;
}
.lg-inline-btn:hover,
.lg-inline-btn:focus-visible {
border-bottom-color: var(--c-accent);
}
.lg-ul kbd,
.lg-p kbd {
padding: 2px 6px;
border: 1px solid var(--c-line-2);
border-radius: var(--radius-xs);
background: rgba(255, 255, 255, 0.04);
font-family: var(--font-mono);
font-size: 0.85em;
color: var(--c-text);
} .lg-help__cta {
width: 100%;
min-height: 44px;
margin-top: 16px;
font-size: var(--fs-xs);
}