:root { --fulcourt-red:#a9000f; --fulcourt-navy:#062d4f; --fulcourt-parchment:#ecdcb7; --fulcourt-sage:#8a9d78; --fulcourt-black:#1a1a1a; --fulcourt-white:#fff; --ink:var(--fulcourt-black); --paper:#fffdf8; --moss:var(--fulcourt-navy); --gold:var(--fulcourt-red); --gold-light:var(--fulcourt-parchment); --sand:var(--fulcourt-parchment); --muted:#625e56; --line:#d7c6a0; --display:Fraunces, Georgia, serif; --body:Inter, Arial, sans-serif; --mono:"DM Mono", monospace; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { background:var(--paper); color:var(--ink); font:400 1.05rem/1.7 var(--body); margin:0; } a { color:inherit; text-underline-offset:.18em; } a:hover { color:var(--fulcourt-red); } img { display:block; height:auto; max-width:100%; } h1,h2,h3,p { margin-top:0; } h1,h2 { font-family:var(--display); font-weight:600; letter-spacing:-.035em; line-height:1.06; } h1 { font-size:clamp(2.35rem,4.6vw,4.15rem); max-width:15ch; } h2 { font-size:clamp(1.9rem,3.35vw,3.2rem); } h3 { font-family:"slanko-jack", var(--display); font-size:clamp(1.1rem,1.55vw,1.45rem); font-weight:400; letter-spacing:.02em; line-height:1.15; }.shell { margin:0 auto; max-width:76rem; padding-left:clamp(1.25rem,4vw,3rem); padding-right:clamp(1.25rem,4vw,3rem); }.skip-link { background:var(--fulcourt-navy); color:#fff; left:-9999px; padding:.75rem 1rem; position:absolute; top:1rem; z-index:5; }.skip-link:focus { left:1rem; }.site-header { background:#fff; border-bottom:3px solid var(--fulcourt-red); }.header-inner { align-items:center; display:flex; gap:2rem; justify-content:space-between; min-height:5.7rem; }.brand-logo { display:block; flex:0 1 19rem; }.brand-logo img { max-height:3.45rem; width:auto; }.site-nav { display:flex; flex-wrap:wrap; gap:clamp(1rem,2.5vw,2rem); }.site-nav a { color:var(--fulcourt-navy); font:600 .76rem/1.2 var(--mono); letter-spacing:.04em; text-decoration:none; text-transform:uppercase; }.site-nav a:hover { color:var(--fulcourt-red); }.imprint-hero { background:var(--fulcourt-parchment); border-bottom:1px solid #d3bd88; padding:clamp(4rem,9vw,7rem) 0 clamp(3.5rem,7vw,5.5rem); }.hero-grid { align-items:end; display:grid; gap:4rem; grid-template-columns:minmax(0,1.8fr) minmax(13rem,.7fr); }.eyebrow,.section-marker,.section-context { color:var(--fulcourt-red); font:500 .76rem/1.3 var(--mono); letter-spacing:.11em; text-transform:uppercase; }.imprint-hero h1,.about-section h2,.relationship-section h2 { color:var(--fulcourt-navy); }.imprint-hero h1 { font-family:var(--display); font-weight:600; letter-spacing:-.035em; }.lede { font:500 clamp(1.15rem,1.9vw,1.42rem)/1.5 var(--display); margin:1.75rem 0; max-width:39rem; }.hero-note { border-left:2px solid var(--fulcourt-red); color:var(--fulcourt-navy); font:500 1.2rem/1.5 var(--display); padding-left:1.25rem; }.text-link { color:var(--fulcourt-navy); font:600 .86rem/1.4 var(--mono); text-decoration:none; }.text-link span { color:var(--fulcourt-red); display:inline-block; margin-left:.25rem; }.about-section { padding:clamp(4.5rem,10vw,8rem) 0; }.reading-grid { display:grid; gap:2rem 7rem; grid-template-columns:12rem minmax(0,1fr); }.reading-grid h2 { max-width:17ch; }.reading-grid div { max-width:48rem; }.reading-grid p:not(.section-marker) { font-size:1.1rem; }.title-section { --hops-ink:#24201b; --hops-paper:#f7f2e8; --hops-moss:#374733; --hops-amber:#b86722; --hops-sand:#e7dcc9; background:var(--hops-moss); color:var(--hops-paper); padding:clamp(4.5rem,10vw,8rem) 0; }.title-section .section-marker { color:#e3ad67; }.section-heading { display:flex; justify-content:space-between; margin-bottom:clamp(2.5rem,6vw,5rem); }.section-context { color:#e6ded0; }.title-feature { align-items:center; display:grid; gap:clamp(2.5rem,7vw,7rem); grid-template-columns:minmax(12rem,.72fr) minmax(0,1fr); margin:0 auto; max-width:61rem; }.cover-frame { background:var(--hops-paper); box-shadow:1.4rem 1.4rem 0 rgba(0,0,0,.22); }.title-copy h2 { color:#fffaf0; font-family:Rye, var(--display); font-size:clamp(2.3rem,4vw,4.15rem); font-weight:400; letter-spacing:.02em; line-height:1.14; }.title-copy .subtitle { font:500 clamp(1.15rem,2.2vw,1.65rem)/1.38 var(--display); max-width:28rem; }.author,.release-line { font:500 .76rem/1.45 var(--mono); letter-spacing:.08em; text-transform:uppercase; }.release-line { color:#e3ad67; margin:1.8rem 0; }.action-row { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2.25rem; }.button { border:1px solid transparent; display:inline-block; font:600 .77rem/1.2 var(--mono); letter-spacing:.02em; padding:1rem 1.15rem; text-decoration:none; text-transform:uppercase; }.title-section .button-primary { background:var(--hops-amber); border-color:var(--hops-amber); color:#fffdf8; }.title-section .button-primary:hover { background:#e3ad67; border-color:#e3ad67; color:var(--hops-ink); }.button-secondary { border-color:#b7bdaf; color:#fffdf8; }.button-secondary:hover { border-color:#e3ad67; color:#e3ad67; }.relationship-section { background:#fff; padding:clamp(4.5rem,10vw,8rem) 0; }.relationship-grid { display:grid; gap:3rem 7rem; grid-template-columns:1fr 1fr; }.relationship-grid h2 { max-width:14ch; }.relationship-copy { align-self:end; max-width:32rem; }.site-footer { background:var(--fulcourt-navy); color:#e9e1d2; padding:2.5rem 0; }.footer-inner { align-items:center; display:flex; flex-wrap:wrap; gap:1rem 3rem; justify-content:space-between; }.footer-inner p { font-size:.8rem; margin:0; }.footer-logo { background:#fff; max-width:15rem; padding:.25rem; } @media (max-width:700px) { .header-inner { align-items:flex-start; flex-direction:column; gap:1rem; padding-bottom:1.25rem; padding-top:1.25rem; } .brand-logo img { max-height:2.8rem; } .hero-grid,.reading-grid,.title-feature,.relationship-grid { grid-template-columns:1fr; } .hero-note { max-width:24rem; } .section-heading { align-items:flex-start; flex-direction:column; gap:.8rem; } .cover-frame { justify-self:center; max-width:17rem; } .title-feature { gap:3.5rem; } }
