/* Homepage editorial layout; shared help-page styling stays in style.css. */
.home-main { overflow: clip; }
.home-main h2 { font-size: clamp(2rem, 4.5vw, 3.7rem); line-height: 1.12; letter-spacing: -.055em; font-weight: 600; }
.home-main h2 span, .home-main h1 span { color: var(--accent-light); }
.home-main h3 { font-weight: 550; letter-spacing: -.025em; line-height: 1.3; }
.home-hero { display: grid; grid-template-columns: 1.05fr 1fr; align-items: center; gap: 1rem; padding-block: 5rem 4rem; }
.home-hero-copy { min-width: 0; position: relative; z-index: 1; animation: arca-enter .8s ease-out both; }
.home-hero .status-badge { margin-bottom: 2rem; }
.home-hero h1 { font-size: clamp(2.7rem, 5.3vw, 4.6rem); line-height: 1.04; letter-spacing: -.06em; margin-bottom: 1.5rem; }
.home-hero-lead { font-size: 1.2rem; max-width: 29rem; margin-bottom: 1rem; }
.home-art { margin: 0; width: 100%; max-width: 36rem; justify-self: center; min-width: 0; animation: arca-enter 1.1s .1s ease-out both; }
.home-art img { display: block; width: 100%; height: auto; mask-image: linear-gradient(to right, transparent, #000 12%, #000 90%, transparent); }
.home-art figcaption { margin-top: 1rem; text-align: center; color: var(--accent-light); font-size: .75rem; letter-spacing: .04em; }
.home-art figcaption span { display: block; margin-top: .3rem; color: var(--text-muted); font-size: .65rem; }
.home-principles { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem 2rem; padding-block: 1.5rem; border-block: 1px solid var(--glass-border); color: var(--text-secondary); font-size: .8rem; letter-spacing: .035em; }
.home-principles span::before { content: ''; display: inline-block; width: 5px; height: 5px; margin: 0 .8rem .15rem 0; border-radius: 50%; background: var(--accent); }
.home-story { display: grid; grid-template-columns: 1fr 1.2fr; gap: 5rem; padding-block: 6rem; }
.home-prose { color: var(--text-secondary); line-height: 1.9; }
.home-prose p + p { margin-top: 1.2rem; }
.home-prose strong { color: var(--text-primary); font-weight: 550; }
.home-section-intro { max-width: 52rem; }
.home-section-lead { max-width: 40rem; margin-top: 1.6rem; color: var(--text-secondary); font-size: 1.08rem; line-height: 1.8; }
.home-privacy { padding-top: 5rem; border-top: 1px solid var(--glass-border); }
.encryption-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; padding: 0; margin: 3.5rem 0 0; gap: 2rem; }
.encryption-flow li { position: relative; padding-top: 1.5rem; border-top: 1px solid var(--glass-border-hover); }
.flow-step { display: block; font-family: ui-monospace, monospace; color: var(--accent); margin-bottom: 1.25rem; font-size: .75rem; }
.encryption-flow h3 { font-size: 1.35rem; margin-bottom: .75rem; }
.encryption-flow p { color: var(--text-secondary); max-width: 27ch; }
.privacy-detail { padding-block: 4rem 6rem; }
.privacy-detail h3 { font-size: 1.5rem; margin-bottom: 1rem; }
.privacy-detail > div > p { color: var(--text-secondary); }
.home-small { font-size: .85rem; line-height: 1.8; color: var(--text-muted); }
.home-text-link { display: inline-flex; align-items: center; gap: .75rem; color: var(--accent-light); text-decoration: underline; min-height: 44px; }
.home-prose .home-text-link { margin-top: 1.2rem; }
.home-pricing { padding: 5rem 0; border-block: 1px solid var(--glass-border); background: radial-gradient(ellipse at 100% 30%, rgba(76, 118, 207, .09), transparent 65%); }
.price-row { display: grid; grid-template-columns: 1.15fr 1fr auto; gap: 2rem; align-items: center; padding-block: 2.5rem; border-top: 1px solid var(--glass-border); }
.home-pricing .home-section-intro { margin-bottom: 3rem; }
.price-row h3 { font-size: clamp(2rem, 3.7vw, 3rem); letter-spacing: -.05em; }
.price-row h3 span { font-size: 1rem; color: var(--accent-light); letter-spacing: -.02em; }
.price-row > p { font-size: .95rem; color: var(--text-secondary); }
.price-status { color: var(--accent-light); font-size: .75rem; }
.pricing-note { max-width: 80ch; border-top: 1px solid var(--glass-border); padding-top: 1.5rem; }
.tool-links a { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding-block: 1.4rem; border-bottom: 1px solid var(--glass-border); }
.tool-links a:first-child { padding-top: 0; }
.tool-links h3 { font-size: 1.3rem; margin-bottom: .4rem; }
.tool-links p { font-size: .9rem; color: var(--text-secondary); }
.tool-links a > span { color: var(--accent); font-size: 1.5rem; transition: transform .2s ease; }
.tool-links a:hover > span { transform: translate(3px, -3px); }
.tool-links a:hover h3 { color: var(--accent-light); }
.home-build { padding-top: 5rem; border-top: 1px solid var(--glass-border); }
.build-spread { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; margin-top: 3.5rem; }
.build-photo-placeholder { margin: 0; border-block: 1px solid var(--glass-border); background: linear-gradient(145deg, #101b2b, #080b12); }
.build-photo-placeholder svg { width: 100%; height: auto; }
.build-photo-placeholder figcaption { padding: 0 2rem 2rem; }
.build-photo-placeholder figcaption strong { display: block; font-weight: 500; }
.build-photo-placeholder figcaption span { display: block; margin-top: .5rem; color: var(--text-muted); font-size: .75rem; }
.build-update h3, .follow-build h3 { font-size: clamp(1.6rem, 3vw, 2.2rem); margin-bottom: 1.25rem; }
.build-update > p { color: var(--text-secondary); }
.build-update > .home-small { color: var(--text-muted); }
.build-specs { padding: 0; margin-block: 1.75rem; list-style: none; }
.build-specs li { display: flex; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--glass-border); padding-block: .8rem; font-size: .85rem; }
.build-specs strong { font-weight: 500; }
.build-specs span { color: var(--text-muted); text-align: right; }
.follow-build { display: grid; grid-template-columns: 1fr 1.2fr; gap: 5rem; padding-block: 4rem 6rem; }
.follow-status { display: flex; gap: .8rem; align-items: center; color: var(--accent-light); font-size: .85rem; }
.home-launch { padding-block: 5rem 7rem; border-top: 1px solid var(--glass-border); }
.home-launch > p:not(.home-eyebrow) { max-width: 44rem; color: var(--text-secondary); margin-top: 1.5rem; line-height: 1.85; }
.home-launch .hero-actions { align-items: center; gap: 1rem 2rem; }
@keyframes arca-enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1000px) { .home-story, .follow-build { gap: 3rem; } .build-spread { gap: 2rem; } .price-row { grid-template-columns: 1fr 1fr; } .price-status { grid-column: 1 / -1; } }
@media (max-width: 850px) { .home-hero { grid-template-columns: 1fr; padding-top: 3.5rem; } .home-hero-copy { max-width: 42rem; } .home-art { max-width: 36rem; margin: 0 auto; } .home-story, .build-spread, .follow-build { grid-template-columns: 1fr; gap: 2rem; } .home-story { padding-block: 4rem; } .home-art figcaption { margin-top: 0; } .encryption-flow { gap: 1.2rem; } .home-principles { justify-content: flex-start; } }
@media (max-width: 600px) { .home-hero { padding-bottom: 2.5rem; } .home-hero h1 { font-size: clamp(2.5rem, 10vw, 3.5rem); } .home-principles { flex-direction: column; gap: .75rem; } .home-privacy, .home-build { padding-top: 3.5rem; } .encryption-flow { grid-template-columns: 1fr; margin-top: 2.5rem; } .encryption-flow p { max-width: none; } .flow-step { margin-bottom: .6rem; } .price-row { grid-template-columns: 1fr; gap: 1.2rem; padding-block: 2rem; } .price-status { grid-column: auto; } .home-pricing { padding-block: 3.5rem; } .follow-build { padding-bottom: 4rem; } .home-launch { padding-block: 3.5rem 5rem; } .build-specs li { flex-direction: column; gap: .3rem; } .build-specs span { text-align: left; } }
@media (prefers-reduced-motion: reduce) { .home-hero-copy, .home-art { animation: none; } .tool-links a > span { transition: none; } .tool-links a:hover > span { transform: none; } }
