*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
body{background:#F5F0EA;color:#1C1A17;font-family:'Libre Baskerville',serif;font-weight:400;font-size:1.125rem;line-height:1.72;overflow-x:hidden;letter-spacing:0.01em}

/* Horizon Line */
.horizon-line{position:fixed;top:61.8%;left:0;right:0;height:0.5px;background:#B8A99A;z-index:10;pointer-events:none}

/* Typewriter Zone */
.typewriter-zone{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(16px,4vw,48px)}
.typewriter{text-align:left;max-width:600px;margin-left:8%}
.tw-title{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(2.5rem,6vw,4.8rem);letter-spacing:0.14em;text-transform:uppercase;color:#1C1A17;line-height:1.1}
.tw-tagline{font-family:'IBM Plex Mono',monospace;font-size:0.875rem;color:#B8A99A;letter-spacing:0.04em;margin-top:1rem}
.tw-cursor{display:inline-block;width:2px;height:1.2em;background:#C4402A;margin-left:4px;animation:cursorBlink 1.06s steps(1) infinite;vertical-align:text-bottom}
@keyframes cursorBlink{0%,50%{opacity:1}51%,100%{opacity:0}}

/* Marble Vein */
.marble-vein{height:24px;background:linear-gradient(90deg,#F5F0EA 0%,#C4B8A8 20%,#E8DED0 40%,#F5F0EA 60%,#C4B8A8 80%,#F5F0EA 100%);opacity:0.4}

/* Editorial Content */
.editorial-content{max-width:1100px;margin:0 auto;padding:clamp(3rem,6vh,6rem) clamp(16px,4vw,48px)}
.editorial-grid{display:grid;grid-template-columns:62% 25% 1fr;gap:clamp(16px,3vw,40px);margin-left:8%}
.main-column p{max-width:58ch;margin-bottom:1.5em;color:#1C1A17}
.section-header{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:0.03em;color:#1C1A17;margin-bottom:1em}
.section-header--light{color:#FAF7F2}

/* Pull Quote */
.pull-quote{margin:2rem 0;padding:1.5rem 0 1.5rem 1.5rem;border-left:2px solid #B8A99A}
.pull-quote p{font-family:'Libre Baskerville',serif;font-style:italic;font-size:clamp(1.1rem,2vw,1.4rem);color:#1C1A17;line-height:1.5}

/* Annotation Column */
.annotation-column{display:flex;flex-direction:column;gap:clamp(16px,3vw,32px)}
.annotation{border-top:1px solid rgba(184,169,154,0.3);padding-top:12px}
.ann-label{font-family:'IBM Plex Mono',monospace;font-size:0.75rem;color:#B8A99A;letter-spacing:0.04em;text-transform:uppercase;display:block;margin-bottom:4px}
.annotation p{font-family:'Libre Baskerville',serif;font-style:italic;font-size:0.85rem;color:#B8A99A;line-height:1.6}

/* Margin Column */
.margin-column{display:flex;align-items:flex-start;justify-content:center;padding-top:1rem}
.margin-glyph{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:2rem;color:#B8A99A;opacity:0.4}

/* Inverted Section */
.inverted-section{background:#2E2A25;padding:clamp(3rem,6vh,6rem) clamp(16px,4vw,48px)}
.inverted-content{max-width:700px;margin-left:calc(8% + clamp(16px,4vw,48px))}
.inverted-content p{color:#FAF7F2;max-width:58ch;margin-bottom:1.5em;opacity:0.9}

/* Colophon */
.colophon{text-align:center;padding:clamp(3rem,6vh,6rem) clamp(16px,4vw,48px)}
.colophon-date{font-family:'IBM Plex Mono',monospace;font-size:0.75rem;color:#B8A99A;letter-spacing:0.04em;margin-bottom:1rem}
.colophon-quote{font-family:'Libre Baskerville',serif;font-style:italic;font-size:0.95rem;color:#B8A99A;margin-bottom:1.5rem}
.hanko{display:inline-block;width:36px;height:36px;border:2px solid #C4402A;border-radius:2px;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.hanko-mark{font-size:1.2rem;color:#C4402A;line-height:1}
.colophon-copy{font-family:'IBM Plex Mono',monospace;font-size:0.7rem;color:#B8A99A;letter-spacing:0.06em}

[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity 0.6s ease-out,transform 0.6s ease-out}
[data-reveal].visible{opacity:1;transform:translateY(0)}

@media(max-width:768px){
  .editorial-grid{grid-template-columns:1fr;margin-left:0}
  .margin-column{display:none}
}
