* { box-sizing: border-box; }
body { margin: 0; background: var(--app-surface-shell); color: rgb(var(--app-text-primary-rgb)); font-family: var(--app-font-body); -webkit-font-smoothing: antialiased; }
a { color: inherit; }
a:focus-visible { outline: 2px solid var(--app-focus); outline-offset: 7px; }
.page { width: min(1360px, 100%); min-height: 100svh; margin: 0 auto; padding: 0 clamp(24px, 5vw, 80px); display: flex; flex-direction: column; }
.site-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 36px 0; border-bottom: 1px solid var(--app-border-subtle); }
.brand { display: inline-flex; align-items: center; gap: 13px; font-family: var(--app-font-heading); font-size: 25px; font-weight: 600; letter-spacing: -.04em; text-decoration: none; }
.brand-symbol, .art-symbol { display: block; background: rgb(var(--app-brand-rgb)); mask: url('/assets/images/logo/polytweaks-symbol.svg') center / contain no-repeat; }
.brand-symbol { width: 27px; height: 33px; }
.edition, .eyebrow, .app-address, .art-caption { font-family: var(--app-font-mono); font-size: 11px; line-height: 1.6; letter-spacing: .07em; }
.edition { color: rgb(var(--app-text-muted-rgb)); }
main { display: grid; grid-template-columns: 1.25fr .75fr; align-items: center; gap: clamp(32px, 6vw, 96px); flex: 1; padding: 80px 0 88px; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 28px; color: rgb(var(--app-text-accent-rgb)); text-transform: uppercase; letter-spacing: .15em; }
.eyebrow span { width: 6px; height: 6px; background: currentColor; }
h1 { margin: 0; font-family: var(--app-font-heading); font-size: clamp(38px, 4.1vw, 60px); font-weight: 500; line-height: 1.12; letter-spacing: -.04em; }
h1 span { color: rgb(var(--app-text-muted-rgb)); }
.description { max-width: 470px; margin: 28px 0 34px; color: rgb(var(--app-text-secondary-rgb)); font-size: 16px; line-height: 1.75; }
.app-link { display: inline-flex; align-items: center; justify-content: center; gap: 25px; min-height: var(--app-control-height); padding: 0 var(--app-control-padding); border: 1px solid transparent; border-radius: var(--app-control-radius); background: var(--app-action-fill); color: var(--app-action-on-fill); font-family: var(--app-font-heading); font-size: var(--app-type-control); font-weight: var(--app-weight-emphasis); letter-spacing: var(--app-tracking-control); text-decoration: none; }
.app-link:hover { background: var(--app-action-fill-hover); }
.app-link span { font-size: 21px; font-weight: 400; }
.app-address { margin: 14px 0 0; color: rgb(var(--app-text-muted-rgb)); font-size: 10px; }
.brand-art { position: relative; aspect-ratio: 1; display: flex; align-items: center; justify-content: center; }
.art-grid { position: absolute; inset: 0; opacity: .3; background-image: linear-gradient(var(--app-border-subtle) 1px, transparent 1px), linear-gradient(90deg, var(--app-border-subtle) 1px, transparent 1px); background-size: 32px 32px; mask-image: radial-gradient(ellipse, black 12%, transparent 72%); }
.art-frame { position: relative; display: flex; align-items: center; justify-content: center; width: 72%; aspect-ratio: 1; border: 1px solid rgba(var(--app-brand-rgb), .22); background: rgba(var(--app-brand-rgb), .025); }
.art-frame::before, .art-frame::after { position: absolute; content: ''; width: 9px; height: 9px; border: 1px solid rgb(var(--app-brand-rgb)); background: var(--app-surface-shell); }
.art-frame::before { top: -5px; left: -5px; }
.art-frame::after { bottom: -5px; right: -5px; }
.art-symbol { width: 44%; height: 58%; }
.art-caption { position: absolute; bottom: -20px; color: rgb(var(--app-text-muted-rgb)); text-align: center; font-size: 9px; }
footer { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 25px 0 30px; border-top: 1px solid var(--app-border-subtle); color: rgb(var(--app-text-muted-rgb)); font-size: 11px; line-height: 1.6; }
footer p { margin: 0; }
footer p span { margin: 0 12px; color: var(--app-border-control); }
footer nav { display: flex; gap: 24px; }
footer a { text-decoration: none; }
footer a:hover { color: rgb(var(--app-text-primary-rgb)); text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 820px) {
    .edition { display: none; }
    main { grid-template-columns: 1fr; gap: 48px; padding: 64px 0; }
    .description { max-width: 540px; }
    .brand-art { width: min(280px, 80%); justify-self: center; margin: 0 0 20px; }
    footer { align-items: flex-start; flex-direction: column; gap: 14px; }
}
@media (max-width: 390px) {
    .page { padding: 0 20px; }
    h1 { font-size: 34px; }
    .site-header { padding: 27px 0; }
    main { padding-top: 48px; }
}
