:root { --ivory:#f5f1e8; --paper:#fbf9f4; --ink:#24231f; --muted:#6d685e; --gold:#a9782d; --gold-light:#d5bb81; --line:rgba(68,59,44,.18); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
button { font:inherit; }
.shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }

.site-header { height:112px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:14px; }
.brand-mark { width:38px; height:38px; border-radius:50%; border:1px solid #b58a48; display:grid; place-items:center; box-shadow:inset 0 0 0 5px rgba(185,139,70,.12); }
.brand-mark::before,.brand-mark::after,.brand-mark i { content:""; grid-area:1/1; border-radius:50%; border:1px solid #b58a48; }
.brand-mark::before { width:25px; height:25px; }
.brand-mark::after { width:16px; height:16px; }
.brand-mark i { width:6px; height:6px; background:#b58a48; }
.brand b { display:block; font:22px/1 Georgia,serif; letter-spacing:.12em; }
.brand small { display:block; margin-top:5px; font-size:8px; letter-spacing:.15em; }
.text-link { font-size:12px; letter-spacing:.12em; text-transform:uppercase; padding-bottom:5px; border-bottom:1px solid var(--gold); }

.hero { min-height:760px; display:grid; grid-template-columns:1.08fr .92fr; align-items:center; gap:8%; padding-block:84px 100px; }
.eyebrow,.section-index { color:var(--gold); font-size:11px; line-height:1.4; letter-spacing:.18em; font-weight:700; }
.hero h1 { margin:24px 0 4px; font:clamp(64px,8vw,112px)/.9 Georgia,serif; letter-spacing:-.055em; max-width:700px; }
.subtitle { margin:0 0 32px; font:26px/1.2 Georgia,serif; color:#6d5530; }
.lede { max-width:650px; margin:0; font:19px/1.7 Georgia,serif; color:#4f4b43; }
.hero-actions { display:flex; align-items:center; gap:24px; margin-top:40px; }
.hero-actions p { max-width:180px; color:var(--muted); font-size:12px; line-height:1.5; text-transform:uppercase; letter-spacing:.08em; }
.button { display:inline-flex; align-items:center; justify-content:space-between; min-width:190px; gap:28px; padding:17px 20px; background:var(--ink); color:#fff; border:1px solid var(--ink); font-size:12px; letter-spacing:.12em; text-transform:uppercase; transition:.2s ease; }
.button:hover { background:var(--gold); border-color:var(--gold); }
.cover-stage { position:relative; display:grid; place-items:center; min-height:600px; }
.cover-stage img { width:min(390px,80%); position:relative; z-index:2; box-shadow:0 30px 70px rgba(64,50,30,.19),0 2px 4px rgba(64,50,30,.13); }
.orbit { position:absolute; border:1px solid rgba(169,120,45,.22); border-radius:50%; }
.orbit-one { width:560px; height:560px; }
.orbit-two { width:430px; height:430px; border-style:dashed; }
.edition-note { position:absolute; z-index:3; right:-16px; bottom:82px; padding:10px 14px; background:var(--paper); border:1px solid var(--gold-light); font-size:9px; letter-spacing:.15em; color:#725529; }

.statement { padding-block:130px; border-top:1px solid var(--line); display:grid; grid-template-columns:.4fr 1.6fr; gap:8%; }
.statement h2,.section-heading h2,.method-grid h2,.audience-card h2,.author-copy h2,.final-cta h2 { margin:0; font:clamp(40px,5vw,68px)/1.05 Georgia,serif; letter-spacing:-.035em; }
.statement>div>p { max-width:730px; margin:36px 0 0; color:var(--muted); font-size:17px; line-height:1.75; }

.axis-section { background:#24231f; color:#f7f3e9; padding-block:110px 120px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:64px; }
.section-heading h2 { max-width:710px; }
.center-grid { display:grid; grid-template-columns:repeat(7,1fr); border-top:1px solid rgba(255,255,255,.16); }
.center-card { position:relative; padding:48px 18px 24px; min-height:235px; border-right:1px solid rgba(255,255,255,.12); }
.center-card:first-child { border-left:1px solid rgba(255,255,255,.12); }
.center-card::before { content:""; position:absolute; top:0; left:50%; width:1px; height:30px; background:var(--accent); }
.node { position:absolute; top:-7px; left:calc(50% - 7px); width:14px; height:14px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 5px color-mix(in srgb,var(--accent),transparent 75%); }
.center-card small { color:var(--accent); font-weight:700; }
.center-card h3 { margin:24px 0 14px; font:20px/1.1 Georgia,serif; }
.center-card p { color:#bdb7ac; font-size:13px; line-height:1.5; }

.included { padding-block:130px; }
.section-heading.narrow { display:block; }
.section-heading.narrow h2 { margin-top:20px; }
.included-grid { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); }
.feature { min-height:520px; padding:56px; display:grid; grid-template-columns:76px 1fr; gap:28px; }
.feature+.feature { border-left:1px solid var(--line); background:var(--ivory); }
.feature-number { font:46px/1 Georgia,serif; color:var(--gold-light); }
.feature h3 { margin:14px 0 24px; font:32px/1.15 Georgia,serif; }
.feature p,.feature li { color:var(--muted); line-height:1.7; }
.feature ul { list-style:none; padding:18px 0 0; margin:28px 0 0; border-top:1px solid var(--line); }
.feature li { padding:9px 0 9px 22px; position:relative; }
.feature li::before { content:""; position:absolute; left:0; top:18px; width:8px; height:1px; background:var(--gold); }
.license-note { margin-top:46px; padding:24px; display:flex; gap:16px; background:rgba(255,255,255,.65); border:1px solid var(--gold-light); }
.license-note>span { width:28px; height:28px; flex:0 0 auto; display:grid; place-items:center; border-radius:50%; background:var(--gold); color:#fff; }
.license-note p { margin:0; font-size:14px; }

.plate-preview { padding-block:120px; background:#e9ece3; border-block:1px solid var(--line); }
.plate-preview-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:10%; align-items:center; }
.plate-art { position:relative; width:min(100%,470px); padding:14px; background:rgba(255,255,255,.55); border:1px solid rgba(78,100,66,.24); box-shadow:0 24px 60px rgba(63,75,52,.14); }
.plate-art img { width:100%; height:auto; }
.sample-label { position:absolute; z-index:2; top:28px; right:-20px; padding:11px 15px; background:#263337; color:#f6f1e7; font-size:9px; font-weight:700; letter-spacing:.15em; }
.plate-copy h2 { margin:20px 0 30px; font:clamp(40px,5vw,66px)/1.05 Georgia,serif; letter-spacing:-.035em; }
.plate-copy>p:not(.section-index):not(.plate-total) { color:#5f6659; font-size:17px; line-height:1.75; }
.plate-points { margin-top:38px; border-top:1px solid rgba(78,100,66,.25); }
.plate-points>div { display:grid; grid-template-columns:52px 1fr; gap:18px; padding:20px 0; border-bottom:1px solid rgba(78,100,66,.25); }
.plate-points span { color:#688154; font:18px Georgia,serif; }
.plate-points p { margin:0; color:#5f6659; line-height:1.55; }
.plate-points b { color:#293129; }
.plate-total { margin:28px 0 0; color:#637452; font-size:11px; line-height:1.6; letter-spacing:.11em; }

.method-section { padding-block:130px; background:var(--ivory); border-block:1px solid var(--line); }
.method-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:10%; }
.method-grid h2 { margin-top:22px; }
.practice-list { border-top:1px solid var(--line); }
.practice-list article { display:grid; grid-template-columns:60px 1fr; gap:22px; padding:30px 0; border-bottom:1px solid var(--line); }
.practice-list article>span { color:var(--gold); font:18px Georgia,serif; }
.practice-list h3 { margin:0 0 8px; font:26px Georgia,serif; }
.practice-list p { margin:0; color:var(--muted); line-height:1.6; }

.audiences { display:grid; grid-template-columns:1fr 1fr; gap:24px; padding-block:130px; }
.audience-card { min-height:440px; padding:56px; border:1px solid var(--line); display:flex; flex-direction:column; justify-content:end; background:linear-gradient(145deg,rgba(255,255,255,.7),rgba(234,225,207,.5)); }
.audience-card.educator { color:#f8f4eb; background:#2b2a26; }
.audience-card h2 { font-size:clamp(36px,4vw,52px); margin:18px 0 24px; }
.audience-card>p:last-child { max-width:480px; color:var(--muted); line-height:1.7; }
.audience-card.educator>p:last-child { color:#c9c3b8; }

.author-section { background:#ebe4d6; padding-block:120px; }
.author-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:10%; align-items:center; }
.portrait-frame { position:relative; padding:18px; border:1px solid rgba(91,72,44,.26); background:rgba(255,255,255,.45); }
.portrait-frame img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center 28%; filter:saturate(.72) contrast(.94); }
.experience-badge { position:absolute; left:36px; right:36px; bottom:34px; padding:20px 24px; background:rgba(250,247,239,.94); border:1px solid rgba(169,120,45,.35); color:#263337; }
.experience-badge b { display:block; color:#2a7d83; font:38px/1 Georgia,serif; }
.experience-badge span { display:block; margin-top:8px; font-size:9px; line-height:1.4; font-weight:700; letter-spacing:.08em; }
.author-copy h2 { margin:20px 0 34px; }
.author-copy>p:not(.section-index) { color:#5f5a50; font-size:17px; line-height:1.75; }

.final-cta { text-align:center; padding-block:150px 130px; position:relative; overflow:hidden; }
.final-cta>*:not(.cta-axis) { position:relative; z-index:2; }
.final-cta h2 { margin:20px auto 28px; max-width:800px; }
.final-cta>p:not(.eyebrow) { max-width:620px; margin:0 auto 36px; color:var(--muted); line-height:1.7; }
.final-cta small { display:block; margin-top:14px; color:#8a857c; }
.cta-axis { position:absolute; left:50%; top:34px; bottom:34px; width:240px; transform:translateX(-50%); opacity:.12; display:flex; flex-direction:column; align-items:center; justify-content:space-between; }
.cta-axis::before { content:""; position:absolute; top:0; bottom:0; left:50%; width:1px; background:var(--gold); }
.cta-axis i { width:34px; height:34px; z-index:1; border-radius:50%; border:1px solid var(--accent); background:var(--paper); box-shadow:inset 0 0 0 9px color-mix(in srgb,var(--accent),transparent 72%); }

.site-footer { min-height:150px; display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); }
.site-footer>p { color:var(--muted); font-size:11px; letter-spacing:.12em; text-transform:uppercase; }

@media (min-width:901px) {
  .plate-preview-grid { grid-template-columns:1fr 1fr; gap:0; align-items:stretch; border:1px solid rgba(78,100,66,.24); background:rgba(255,255,255,.28); }
  .plate-art { width:100%; max-width:none; min-height:680px; padding:54px; display:grid; place-items:center; border:0; box-shadow:none; background:rgba(255,255,255,.34); }
  .plate-art img { width:min(290px,100%); max-height:520px; object-fit:contain; box-shadow:0 18px 46px rgba(63,75,52,.16); }
  .sample-label { top:32px; right:32px; }
  .plate-copy { min-height:680px; padding:54px; display:flex; flex-direction:column; justify-content:center; border-left:1px solid rgba(78,100,66,.24); background:rgba(251,249,244,.58); }
  .plate-copy h2 { font-size:clamp(40px,4vw,56px); margin-bottom:24px; }
  .plate-copy>p:not(.section-index):not(.plate-total) { font-size:16px; line-height:1.65; }
  .plate-points { margin-top:28px; }
  .plate-points>div { padding:16px 0; }
}

@media (max-width:900px) {
  .hero { grid-template-columns:1fr; }
  .hero-copy { padding-top:30px; }
  .cover-stage { order:-1; min-height:auto; padding-block:30px 60px; }
  .cover-stage img { width:min(330px,72vw); }
  .orbit-one { width:450px; height:450px; max-width:100vw; }
  .orbit-two { width:350px; height:350px; max-width:85vw; }
  .statement,.method-grid,.author-grid,.plate-preview-grid { grid-template-columns:1fr; gap:48px; }
  .plate-art { margin-inline:auto; }
  .center-grid { grid-template-columns:repeat(2,1fr); border-top:0; }
  .center-card { border-top:1px solid rgba(255,255,255,.16); }
  .center-card:last-child { grid-column:span 2; }
  .included-grid,.audiences { grid-template-columns:1fr; }
  .feature+.feature { border-left:0; border-top:1px solid var(--line); }
  .section-heading { display:block; }
  .section-heading h2 { margin-top:18px; }
}

@media (max-width:600px) {
  .shell { width:min(100% - 30px,1180px); }
  .site-header { height:90px; }
  .text-link { display:none; }
  .brand b { font-size:18px; }
  .hero { padding-block:40px 70px; min-height:auto; }
  .hero h1 { font-size:58px; }
  .subtitle { font-size:21px; }
  .lede { font-size:17px; }
  .hero-actions { align-items:flex-start; flex-direction:column; }
  .edition-note { right:0; bottom:38px; }
  .statement,.included,.audiences { padding-block:90px; }
  .axis-section,.method-section,.author-section,.plate-preview { padding-block:90px; }
  .sample-label { right:0; }
  .center-grid { grid-template-columns:1fr; }
  .center-card:last-child { grid-column:auto; }
  .feature { grid-template-columns:1fr; padding:34px 26px; min-height:auto; }
  .feature-number { font-size:34px; }
  .audience-card { min-height:390px; padding:34px 28px; }
  .portrait-frame { padding:10px; }
  .final-cta { padding-block:110px; }
  .site-footer { padding-block:42px; display:block; }
  .site-footer>p { margin-top:26px; line-height:1.7; }
}
