:root{--ink:#24180f;--ink-soft:#6a5340;--mist:#efe4d4;--fog:#f6efe5;--paper:#fbf7f0;--white:#fff;--sage:#a65d1a;--sage-deep:#704011;--line:#24180f1f;--shadow:0 28px 60px #24180f29;--font-display:"Playfair Display", Georgia, serif;--font-body:"Karla", system-ui, sans-serif;--max:1180px;--nav-h:4.25rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;line-height:1.65}img{max-width:100%;display:block}a{color:inherit}.container{width:min(100% - 2.5rem, var(--max));margin-inline:auto}.nav{z-index:40;height:var(--nav-h);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fafbfcb8;border-bottom:1px solid #0000;position:fixed;inset:0 0 auto}.nav__inner{justify-content:space-between;align-items:center;gap:1rem;height:100%;display:flex}.nav__brand{flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.nav__logo{object-fit:contain;width:auto;height:2.35rem;display:block}@media (width>=700px){.nav__logo{height:3.65rem}}.nav__links{align-items:center;gap:1.25rem;display:flex}.nav__links a{color:var(--ink-soft);font-size:.92rem;font-weight:450;text-decoration:none;transition:color .2s}.nav__links a:hover{color:var(--ink)}.nav__cta{background:var(--ink);border-radius:999px;padding:.55rem 1rem;color:#fff!important}.nav__cta:hover{opacity:.92;color:#fff!important}.btn{border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.95rem 1.45rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:transform .25s,background .25s,color .25s,border-color .25s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn--solid{background:var(--ink);color:#fff}.btn--ghost{color:var(--ink);background:#ffffff59;border:1px solid #15202b38}.btn--ghost:hover{border-color:var(--ink)}.hero{min-height:100dvh;padding:calc(var(--nav-h) + 2.5rem) 0 4rem;background:radial-gradient(70% 55% at 82% 15%,#a65d1a33,#0000 55%),radial-gradient(50% 40% at 8% 88%,#50321e1f,#0000 50%),linear-gradient(160deg,#e8d8c0 0%,#f7f0e4 46%,#efe6d6 100%);align-items:center;display:flex;position:relative;overflow:hidden}.hero__glow{pointer-events:none;background:radial-gradient(circle,#ffffffb3,#0000 68%);border-radius:50%;width:42vw;height:42vw;position:absolute;top:8%;right:-8%}.hero__grain{opacity:.35;pointer-events:none;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.45'/%3E%3C/svg%3E");position:absolute;inset:0}.hero__layout{z-index:1;align-items:center;gap:3rem;display:grid;position:relative}@media (width>=960px){.hero__layout{grid-template-columns:1.05fr .95fr;gap:2rem}}.hero__copy{max-width:34rem;animation:1s both rise}.hero__kicker{letter-spacing:.2em;text-transform:uppercase;color:var(--sage-deep);margin:0 0 1rem;font-size:.78rem;font-weight:500}.hero__name{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(3.2rem,9vw,5.8rem);font-weight:600;line-height:.95}.hero__name span{display:block}.hero__tagline{color:var(--ink-soft);max-width:28rem;margin:1.5rem 0 2rem;font-size:clamp(1.08rem,2vw,1.28rem);font-weight:350}.hero__actions{flex-wrap:wrap;gap:.85rem;display:flex}.hero__stage{justify-content:center;align-items:center;min-height:420px;animation:1.1s .12s both rise;display:flex;position:relative}.hero__stack{width:min(100%,420px);height:460px;position:relative}.hero__cover{aspect-ratio:2/3;object-fit:cover;width:56%;box-shadow:var(--shadow);background:#fff;border-radius:4px;position:absolute}.hero__cover--1{z-index:4;animation:6s ease-in-out infinite floatA;top:8%;left:8%}.hero__cover--2{z-index:2;width:48%;animation:7s ease-in-out infinite floatB;top:0;right:2%;transform:rotate(7deg)}.hero__cover--3{z-index:3;width:46%;animation:6.5s ease-in-out .4s infinite floatB;bottom:4%;left:0;transform:rotate(-8deg)}.hero__cover--4{z-index:1;opacity:.95;width:44%;animation:7.5s ease-in-out .2s infinite floatA;bottom:0;right:10%;transform:rotate(4deg)}.about{background:linear-gradient(180deg, #f7fafb 0%, var(--fog) 100%);border-top:1px solid var(--line);padding:clamp(4.5rem,11vh,7.5rem) 0}.about__quote{border:0;max-width:46rem;margin:0 0 clamp(3rem,7vh,4.5rem);padding:0}.about__quote p{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(1.55rem,3.4vw,2.35rem);font-weight:500;line-height:1.35}.about__grid{gap:2.75rem;display:grid}@media (width>=900px){.about__grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:4.5rem}}.about__identity{top:calc(var(--nav-h) + 1.25rem);position:sticky}.about__photo-wrap{width:min(100%,220px);margin-bottom:1.5rem}.about__photo{aspect-ratio:2/3;object-fit:cover;border:1px solid var(--line);width:100%;box-shadow:var(--shadow);border-radius:18px}.about__label{letter-spacing:.18em;text-transform:uppercase;color:var(--sage);margin:0 0 .7rem;font-size:.76rem;font-weight:500}.about__title{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 1.25rem;font-size:clamp(2rem,4vw,2.85rem);font-weight:600;line-height:1.12}.about__themes{flex-wrap:wrap;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.about__themes li{border:1px solid var(--line);color:var(--ink-soft);background:#ffffffa6;border-radius:999px;padding:.4rem .8rem;font-size:.82rem}.about__copy{max-width:38rem}.about__bio{color:var(--ink-soft);margin:0 0 1.15rem;font-size:1.05rem}.about__bio--lead{color:var(--ink);font-size:1.18rem;font-weight:400}.about__bio:last-child{margin-bottom:0}.reveal{opacity:0;transition:opacity .85s,transform .85s;transform:translateY(26px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.books{background:var(--paper);border-top:1px solid var(--line);padding:clamp(4.5rem,11vh,7.5rem) 0}.books__head{gap:1rem;margin-bottom:2.75rem;display:grid}@media (width>=800px){.books__head{grid-template-columns:1.2fr .8fr;align-items:end;gap:2rem}}.books__title{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(2rem,4vw,2.85rem);font-weight:600}.books__intro{color:var(--ink-soft);max-width:28rem;margin:0;font-size:1.05rem}.featured{border:1px solid var(--line);background:linear-gradient(135deg,#e7eef3e6,#f3f6f8f2);border-radius:18px;gap:2rem;margin-bottom:3.5rem;padding:clamp(1.25rem,3vw,2rem);display:grid}@media (width>=860px){.featured{grid-template-columns:240px 1fr;align-items:center;gap:2.75rem}}.featured__cover-wrap{max-width:240px;margin:0 auto;text-decoration:none;display:block}.featured__cover{aspect-ratio:2/3;object-fit:cover;width:100%;box-shadow:var(--shadow);border-radius:6px;transition:transform .35s}.featured__cover-wrap:hover .featured__cover{transform:translateY(-6px)}.featured__title{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 .9rem;font-size:clamp(1.55rem,3vw,2.1rem);font-weight:600;line-height:1.2}.featured__desc{color:var(--ink-soft);max-width:34rem;margin:0 0 1.5rem;font-size:1.05rem}.books__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.75rem 1.5rem;display:grid}@media (width>=720px){.books__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1020px){.books__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:3rem 1.75rem}}.book{flex-direction:column;gap:.95rem;height:100%;display:flex}.book__cover-link{text-decoration:none;display:block}.book__cover{aspect-ratio:2/3;object-fit:cover;background:var(--mist);border-radius:5px;width:100%;transition:transform .35s,box-shadow .35s;box-shadow:0 14px 30px #15202b1f}.book:hover .book__cover{transform:translateY(-8px);box-shadow:0 22px 40px #15202b2e}.book__meta{flex-direction:column;flex:1;gap:.4rem;display:flex}.book__genre{letter-spacing:.14em;text-transform:uppercase;color:var(--sage);margin:0;font-size:.7rem;font-weight:500}.book__title{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:1.02rem;font-weight:600;line-height:1.3}.book__desc{color:var(--ink-soft);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.88rem;display:-webkit-box;overflow:hidden}.book__amazon{color:var(--sage-deep);border-bottom:1px solid #35534759;align-self:flex-start;margin-top:auto;padding-top:.45rem;font-size:.88rem;font-weight:500;text-decoration:none;transition:color .2s,border-color .2s}.book__amazon:hover{color:var(--ink);border-bottom-color:var(--ink)}.contact{background:linear-gradient(180deg, var(--paper) 0%, var(--fog) 100%);padding:clamp(3.5rem,8vw,5rem) 0 4rem}.contact__intro{max-width:38rem;margin-bottom:2.75rem}.contact__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--sage);margin:0 0 .65rem;font-size:.75rem;font-weight:600}.contact__title{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 .75rem;font-size:clamp(2rem,4.5vw,2.85rem);font-weight:600}.contact__lede{color:var(--ink-soft);margin:0;font-size:1.05rem}.contact__layout{gap:2rem;display:grid}@media (width>=880px){.contact__layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:2.5rem}}.contact__aside{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;padding:1.75rem}.contact__detail{margin-bottom:1.35rem}.contact__detail h3{font-family:var(--font-display);color:var(--sage-deep);margin:0 0 .45rem;font-size:1rem;font-weight:600}.contact__detail a,.contact__detail p{color:var(--ink-soft);margin:0 0 .2rem;font-size:.95rem;text-decoration:none;display:block}.contact__detail a:hover{color:var(--ink)}.contact__rp-link{color:var(--sage-deep);border-bottom:1px solid #35534759;margin-top:.5rem;font-weight:600;text-decoration:none;display:inline-block}.contact__rp-link:hover{color:var(--ink)}.contact__panel{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;padding:2rem}.contact__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=560px){.contact__row{grid-template-columns:1fr}}.contact__form{flex-direction:column;gap:1rem;display:flex}.contact__form label{color:var(--ink-soft);flex-direction:column;gap:.4rem;font-size:.88rem;display:flex}.contact__form label span{opacity:.75;font-weight:400}.contact__form input,.contact__form textarea{font:inherit;border:1px solid var(--line);background:var(--fog);color:var(--ink);resize:vertical;border-radius:12px;padding:.85rem 1rem}.contact__form input:focus,.contact__form textarea:focus{background:var(--white);border-color:#4f6f6173;outline:none}.contact__btn{font:inherit;color:#fff;background:var(--sage);cursor:pointer;border:none;border-radius:999px;align-self:flex-start;margin-top:.25rem;padding:.9rem 1.75rem;font-weight:600;transition:transform .2s,background .2s}.contact__btn:hover{background:var(--sage-deep);transform:translateY(-2px)}.contact__thanks h3{font-family:var(--font-display);margin:0 0 .5rem;font-size:1.5rem}.contact__thanks p{color:var(--ink-soft);margin:0}.footer{background:var(--fog);padding:0 0 2rem}.footer__panel{border-top:1px solid var(--line);gap:1.25rem;padding:2.25rem 0 0;display:grid}@media (width>=800px){.footer__panel{grid-template-columns:1.4fr 1fr auto;align-items:end;padding-top:2.5rem}}.footer__logo{object-fit:contain;width:auto;max-width:min(280px,55vw);height:3.4rem;margin:0 0 .5rem;display:block}.footer__tag{color:var(--ink-soft);max-width:28rem;margin:0;font-size:.95rem}.footer__meta{flex-wrap:wrap;gap:1rem 1.35rem;display:flex}.footer__meta a{color:var(--ink-soft);border-bottom:1px solid #0000;font-size:.92rem;text-decoration:none}.footer__meta a:hover{color:var(--ink);border-bottom-color:var(--line)}.footer__copy{color:var(--ink-soft);margin:0;font-size:.85rem}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes floatA{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes floatB{0%,to{transform:translateY(0) rotate(var(--r,6deg))}50%{transform:translateY(-12px) rotate(var(--r,6deg))}}.hero__cover--2{--r:7deg}.hero__cover--3{--r:-8deg}@media (width<=700px){.nav__links a:not(.nav__cta){display:none}.hero{padding-top:calc(var(--nav-h) + 1.5rem);align-items:start}.hero__stage{min-height:340px}.hero__stack{height:360px}}.nav__brand-text,.footer__brand-text{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:1.15rem;font-weight:700;text-decoration:none}.footer__brand-text{margin-bottom:.75rem;font-size:1.35rem;display:inline-block}.btn--solid:hover,.nav__cta{background:var(--sage-deep)}.about__label,.hero__kicker{color:var(--sage-deep)}
