/* 52xSeven — static preview. System fonts, no scripts or external dependencies. */
:root{--bg:#F7F5EF;--ink:#18243B;--ink-soft:#526158;--green:#206443;--green-hover:#174d33;--green-text:#206443;--green-ink:#24452f;--green-soft:#DCE9B5;--line:#D9DDD3;--card:#fff;--sun-soft:#f4edcf;--radius:12px;--max:1280px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:24px}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:1.0625rem;line-height:1.6;color:var(--ink);background:var(--bg)}
img,svg{max-width:100%;display:block}
a{color:var(--green)}
a:hover{text-decoration-thickness:2px}
h1,h2,h3{line-height:1.15;margin:0 0 .6em;letter-spacing:-.025em}
h1{font-size:clamp(2.2rem,5.3vw,4.8rem)}
h2{font-size:clamp(1.6rem,3vw,2.15rem)}
h3,.h3{font-size:1.2rem}
p{margin:0 0 1em}
li{margin-bottom:.35em}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 28px}
.prose{max-width:760px}
section{padding:56px 0}
section[id]{scroll-margin-top:24px}
.section-head{max-width:740px;margin-bottom:26px}
.kicker{display:block;font-weight:750;font-size:.8rem;letter-spacing:.045em;text-transform:uppercase;color:var(--green);margin-bottom:20px}
.lead{font-size:1.25rem;line-height:1.65;color:var(--ink-soft)}
.alt{background:#eeefe7;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
:focus-visible{outline:3px solid var(--green);outline-offset:5px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;background:var(--ink);color:#fff;padding:12px 18px;border-radius:6px;z-index:10}
.preview-bar{background:var(--ink);color:#fff;text-align:center;font-size:.85rem;padding:9px 16px}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:26px;padding-bottom:26px;border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;min-height:44px;flex-shrink:0}
.logo img{width:190px;height:auto}
.nav{display:flex;flex-wrap:wrap;gap:8px 24px}
.nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.95rem;font-weight:700;text-decoration:none;color:var(--ink)}
.nav a:hover,.nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--green)}
.btn,.text-link,.back-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;font-size:1rem;font-weight:700;text-decoration:none}
.btn{padding:11px 20px;border:1px solid transparent;border-radius:6px;gap:8px}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-hover)}
.btn-ghost{border-color:var(--ink);color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:#fff}
.text-link{color:var(--ink);padding:10px 4px}
.text-link:hover,.back-link:hover{text-decoration:underline}
.back-link{justify-content:flex-start;margin-bottom:20px}
.hero-ctas{display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;margin-top:22px}
.home-hero{display:grid;grid-template-columns:1.65fr 1fr;gap:46px;align-items:center;padding:56px 0 60px}
.home-hero h1{font-size:clamp(2.5rem,4.8vw,4.6rem);line-height:1.08;margin:0;font-weight:800;letter-spacing:-.035em}
.home-hero em{display:block;font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--green);margin-top:12px;letter-spacing:-.025em;font-size:1em}
.hero-explanation{padding-top:56px}
.hero-explanation>p:not(.lead){font-size:.93rem;color:var(--ink-soft)}
.home-books{padding:0 0 40px}
.catalog-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:22px}
.catalog-heading h2,.catalog-heading p{margin:0}
.catalog-heading p{color:var(--ink-soft);font-size:1rem}
.book-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.book-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);text-decoration:none}
.book-card:hover{border-color:var(--green);box-shadow:0 5px 18px #18243b12}
.book-card:focus-visible{outline-offset:5px}
.book-art{height:14.6875rem;position:relative;padding:22px 24px;overflow:hidden}
.cover-mlf{background:var(--green);color:var(--bg)}
.cover-iz{background:var(--green-soft);color:var(--green-ink)}
.cover-bcf{background:var(--ink);color:var(--bg)}
.art-top{display:flex;justify-content:space-between;gap:12px;font-size:.58rem;font-weight:650;letter-spacing:.02em}
.art-top span:first-child{font-size:.67rem;font-weight:800}
.art-title{font-family:Georgia,"Times New Roman",serif;font-size:2.2rem;line-height:1.08;margin-top:43px;position:relative;z-index:1}
.art-symbol{position:absolute;right:20px;bottom:20px;font-family:Georgia,serif;font-size:6.5rem;line-height:1;color:var(--green-soft)}
.cover-iz .art-symbol{color:#607d40}
.art-format{position:absolute;bottom:18px;font-size:.55rem;letter-spacing:.025em}
.book-info{padding:20px 23px;display:flex;flex-direction:column;flex:1}
.book-info h3{font-size:1.22rem;letter-spacing:0;margin-bottom:9px}
.book-info p{font-size:.97rem;color:var(--ink-soft);margin-bottom:18px;max-width:27ch}
.book-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:12px;margin-top:auto}
.price{font-size:1.8rem;font-weight:800;margin:0;white-space:nowrap}
.price small{font-size:.8rem;font-weight:400;color:var(--ink-soft)}
.view-book{font-size:.8rem;font-weight:750;white-space:nowrap}
.home-steps{display:grid;grid-template-columns:1fr 3fr;gap:20px 34px;border-top:1px solid var(--line);padding:34px 0 30px}
.home-steps h2{line-height:1.35;font-size:1.85rem}
.quick-steps{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.step-number{display:block;font-family:Georgia,serif;font-size:1.2rem;color:var(--green);margin-bottom:12px}
.quick-steps h3{font-size:1.05rem;letter-spacing:0}
.quick-steps p{font-size:.92rem;color:var(--ink-soft);margin:0}
.steps-more{grid-column:2;margin:0}
.steps-more .text-link{font-size:.9rem}
.product-hero{padding:40px 0}
.product-hero .wrap{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:60px;align-items:center}
.product-intro .kicker{margin-bottom:14px}
.product-intro .lead{margin:0;max-width:55ch}
.availability{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.availability .kicker{margin-bottom:10px}
.availability .price{font-size:2.5rem;margin-bottom:16px}
.availability .price small{font-size:.95rem}
.availability p:not(.price){font-size:.95rem}
.status{background:var(--green-soft);color:var(--green-ink);font-weight:700;border-radius:6px;padding:12px 14px}
.availability-note{border-top:1px solid var(--line);padding-top:16px;margin-bottom:0;color:var(--ink-soft)}
.sample-section{border-top:1px solid var(--line);padding-top:38px}
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-width:0}
.panel h3{margin-bottom:12px}
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.included-files ul{padding-left:1.2em;margin:0}
.included-files li{margin-bottom:12px;overflow-wrap:anywhere}
.requirements p,.product-detail p{color:var(--ink-soft)}
.product-detail .kicker{display:none}
.product-detail .h3,.product-detail h3{margin-top:26px}
.checks{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.checks li{padding-left:28px;position:relative}
.checks li::before{content:"✓";position:absolute;left:0;top:0;color:var(--green);font-weight:800}
.note-line{margin-top:20px}
.math{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--sun-soft);padding:14px;border-radius:6px;font-size:.95rem;overflow-wrap:anywhere}
.table-scroll{overflow-x:auto;border-radius:4px}
.sample{width:100%;min-width:620px;border-collapse:collapse;font-size:1rem}
.sample th,.sample td{text-align:left;padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.sample th{font-size:.8rem;letter-spacing:.035em;text-transform:uppercase;color:var(--ink-soft)}
.table-hint{font-size:.85rem;color:var(--ink-soft);margin-bottom:12px}
.example-label{font-size:.85rem;font-weight:750;color:var(--green);margin-bottom:10px}
.example-tag{font-size:.88rem;color:var(--ink-soft);margin:18px 0 0}
.flag{font-size:.8rem;font-weight:700;padding:4px 8px;border-radius:5px;background:#fce7e2;color:#842e25;display:inline-block;white-space:nowrap}
.flag.green{background:var(--green-soft);color:var(--green-ink)}
.flag.ink{background:#e6ebf5;color:var(--ink)}
.flag.sun{background:var(--sun-soft);color:#644a10}
.total{font-weight:750;margin:18px 0 0}
.panel ol{padding-left:1.3em;margin:0}
.page{padding:48px 0 64px}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0;margin:0;list-style:none}
.step{position:relative;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.step-num{position:absolute;right:22px;top:18px;font-family:Georgia,serif;font-size:2rem;color:var(--green)}
.step-icon{height:64px;display:flex;align-items:center;margin-bottom:14px}
.step p{font-size:1rem;color:var(--ink-soft);margin:0}
.page-cta{margin-top:28px}
.faq{display:grid;gap:12px;max-width:800px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:8px;padding:0 20px}
.faq summary{cursor:pointer;font-weight:700;padding:16px 30px 16px 0;position:relative;list-style:none;min-height:56px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:12px;font-size:1.4rem;color:var(--green)}
.faq details[open] summary::after{content:"−"}
.faq p{color:var(--ink-soft)}
#newsletter{padding-top:0}
.signup{background:var(--green-soft);border-radius:var(--radius);padding:32px;max-width:800px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;max-width:620px}
.email{font-weight:750;overflow-wrap:anywhere}
.site-footer{border-top:1px solid var(--line);padding:28px 0;color:var(--ink-soft);font-size:.85rem}
.site-footer .wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:start}
.site-footer p{margin-bottom:7px}
.site-footer nav{display:flex;flex-wrap:wrap;gap:0 20px}
.site-footer a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:none}
.site-footer a:hover{text-decoration:underline}
.disclaim{font-weight:700;color:var(--ink)}
@media(min-width:1100px){.table-hint{display:none}.book-art{height:15.3125rem}}
@media(max-width:979px){.home-hero{grid-template-columns:1fr;gap:24px}.hero-explanation{padding:0}.home-hero h1{font-size:clamp(2.5rem,7vw,4rem)}.home-hero .desktop-break{display:none}.hero-explanation .lead{margin-bottom:14px}.book-art{height:11.5625rem;padding:18px}.art-title{font-size:1.7rem;margin-top:30px}.art-symbol{font-size:4.5rem;right:12px}.art-top{font-size:.48rem}.book-info{padding:18px}.book-foot{flex-wrap:wrap}.home-steps{grid-template-columns:1fr}.home-steps h2 br{display:none}.steps-more{grid-column:1}.product-hero .wrap{gap:28px;grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr)}.site-header .wrap{flex-wrap:wrap}.nav{gap:6px 20px}}
@media(max-width:719px){.wrap{padding-left:20px;padding-right:20px}.site-header .wrap{padding-top:18px;padding-bottom:12px;gap:10px}.logo img{width:165px}.nav{width:100%;gap:4px 24px}.nav a{font-size:.88rem}.nav .secondary-nav{display:none}.home-hero{padding:28px 0 38px;gap:18px}.home-hero h1{font-size:clamp(2.15rem,9.5vw,3.5rem)}.home-hero em{margin-top:12px;max-width:17ch}.kicker{font-size:.7rem;margin-bottom:16px}.lead{font-size:1.12rem}.hero-explanation>p:not(.lead){font-size:.84rem}.hero-ctas{gap:8px 14px;margin-top:20px}.btn,.text-link{font-size:.9rem}.btn{padding:10px 16px}.catalog-heading{display:block;margin-bottom:18px}.catalog-heading h2{font-size:1.65rem;margin-bottom:3px}.catalog-heading p{font-size:.9rem}.book-grid{grid-template-columns:1fr;gap:18px}.book-art{height:8.75rem;padding:16px 24px}.art-top{font-size:.5rem}.art-top span:first-child{font-size:.58rem}.art-title{font-size:1.65rem;margin-top:12px}.art-symbol{font-size:5.3rem;right:30px;bottom:8px}.art-format{font-size:.5rem;bottom:10px}.book-info{padding:20px 23px}.book-info h3{font-size:1.2rem}.book-info p{font-size:.94rem;max-width:29ch}.book-foot{flex-wrap:nowrap}.home-steps{padding:28px 0;gap:18px}.home-steps h2{font-size:1.6rem}.quick-steps{grid-template-columns:1fr;gap:22px}.quick-steps li{display:grid;grid-template-columns:22px 1fr;gap:12px}.step-number{margin:0}.quick-steps p{max-width:36ch}.product-hero{padding:24px 0 30px}.product-hero .wrap,.split,.steps{grid-template-columns:1fr}.product-hero h1{font-size:2.5rem;overflow-wrap:normal}.availability{padding:22px}.availability .price{font-size:2rem}.product-intro .back-link{margin-bottom:14px}.panel{padding:18px}.sample-section{padding-top:28px}section{padding:36px 0}.sample{min-width:600px}.table-hint{font-size:.82rem}.site-footer .wrap{grid-template-columns:1fr;gap:14px}.site-footer nav{gap:0 18px}.signup{padding:24px}.page{padding:32px 0 44px}}
@media(prefers-reduced-motion:no-preference){.book-card,.btn{transition:border-color .15s,background-color .15s,box-shadow .15s}}
.buy-btn{width:100%;margin:6px 0 14px}
.is-disabled,.is-disabled:hover{background:var(--line);color:var(--ink-soft);cursor:not-allowed}
/* Home fits one screen (no scroll). "How it works" lives on /how. */
html.fit .home-steps{display:none}
html.fit .site-header .wrap{padding-top:12px;padding-bottom:12px}
html.fit .home-hero{padding:clamp(10px,3vh,40px) 0 clamp(10px,2.5vh,32px)}
html.fit .home-hero h1{font-size:clamp(1.9rem,min(5vw,7vh),4.2rem)}
html.fit .book-art{height:clamp(5.5rem,20vh,12rem)}
html.fit .art-title{margin-top:clamp(6px,3vh,36px)}
html.fit .book-info{padding:14px 20px}
html.fit .home-footer{padding:10px 0}
html.fit .home-footer nav{display:none}
@media(max-width:719px){html.fit .book-grid{grid-template-columns:1fr;gap:8px}html.fit .book-card{flex-direction:row}html.fit .book-art{height:auto;width:34%;flex-shrink:0;padding:10px}html.fit .art-title{font-size:1rem;margin-top:6px}html.fit .art-symbol,html.fit .art-format{display:none}html.fit .book-info{padding:10px 14px}html.fit .book-info p{font-size:.85rem;margin-bottom:4px}html.fit .home-hero{padding:12px 0}html.fit .hero-explanation>p:not(.lead){display:none}html.fit .lead{font-size:1rem;margin-bottom:6px}html.fit .hero-ctas{margin-top:8px}html.fit .catalog-heading{margin-bottom:8px}html.fit .catalog-heading h2{font-size:1.3rem}}
html.fit .home-hero h1{font-size:clamp(1.8rem,min(4.2vw,6vh),3.6rem);margin-bottom:0}
html.fit .home-hero .kicker{margin-bottom:10px}
html.fit .book-info h3{margin-bottom:4px}
html.fit .book-info p{margin-bottom:8px}
html.fit .book-art{height:clamp(5rem,16vh,10rem)}
@media(max-width:719px){html.fit .site-header .wrap{padding-top:8px;padding-bottom:4px}html.fit .home-hero{gap:6px;padding:8px 0}html.fit .home-hero h1{font-size:1.75rem}html.fit .home-hero em{margin-top:4px}html.fit .book-grid .book-card:nth-child(3){display:none}html.fit .book-foot{margin-top:0}html.fit .home-footer{font-size:.75rem}}
html.fit .hero-explanation{padding-top:0}
html.fit .hero-explanation .lead{margin-bottom:8px}
@media(max-width:719px){html.fit .book-card{flex-direction:row}html.fit .book-card .book-art{height:auto;min-height:0;width:34%}html.fit .book-card .book-info{padding:10px 14px}}
@media(max-height:820px) and (min-width:720px){html.fit .book-art{height:clamp(4rem,11vh,7rem)}html.fit .art-symbol{font-size:3.5rem}html.fit .book-info{padding:10px 18px}html.fit .book-info p{margin-bottom:4px}html.fit .home-hero{padding:8px 0 12px}html.fit .catalog-heading{margin-bottom:10px}}
@media(max-width:719px){html.fit .book-info p{display:none}html.fit .book-info h3{font-size:1.05rem}html.fit .catalog-heading{margin-bottom:6px}}
@media(max-height:760px) and (min-width:720px){html.fit .home-hero h1{font-size:clamp(1.8rem,5.5vh,3rem)}html.fit .site-header .wrap{padding-top:6px;padding-bottom:6px}html.fit .preview-bar{padding:5px 12px}}
