:root{--paper:#faf7f2;--ink:#38203e;--muted:#665469;--line:#d9cdd4;--plum:#34153f;--gold:#efbb75}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.8 Manrope,Arial,sans-serif}img{display:block;max-width:100%}a{color:inherit;text-underline-offset:.25em}a:hover{color:#94325f}a:focus-visible,summary:focus-visible{outline:3px solid #9d437c;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.25;letter-spacing:-.025em}h2{font-size:clamp(30px,3.5vw,44px);font-weight:500;margin-bottom:20px}h3{font-size:24px;font-weight:600}p{margin-bottom:1.25em}.wrap{max-width:1320px;margin:auto;padding:0 6vw}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:14px;line-height:1.7;font-weight:600}.number{font-size:14px;color:var(--muted)}.subtitle{font-size:25px;line-height:1.4}.text-link{font-weight:650;text-decoration:underline;text-underline-offset:6px}.skip{position:absolute;left:-9999px}.skip:focus{left:15px;top:15px;background:white;padding:15px;z-index:10}
.site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:28px 0;border-bottom:1px solid var(--line)}.brand{font-family:Italiana,Georgia,serif;font-size:30px;line-height:1.2;text-decoration:none;letter-spacing:0;white-space:nowrap}nav{display:flex;gap:14px 25px;flex-wrap:wrap}nav a{font-size:15px;text-decoration:none}nav a[aria-current=page]{text-decoration:underline}
.home-banner{position:relative;display:flex;align-items:center;justify-content:flex-end;width:100vw;margin:0 calc(50% - 50vw) 48px;aspect-ratio:21/9;min-height:390px;isolation:isolate}.banner-image{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:right center;filter:none;z-index:-1}.banner-copy{width:32%;padding:20px clamp(18px,2.5vw,48px) 20px 1vw;color:#242323;text-align:left}.banner-copy h1{font-family:Italiana,Georgia,serif;font-size:clamp(48px,4.7vw,84px);font-weight:400;line-height:1.08;letter-spacing:-.025em;margin-bottom:20px}.banner-copy h1 span{display:block}.banner-copy p{font-size:clamp(22px,1.9vw,30px);font-weight:650;line-height:1.5;margin:0}
.work-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:64px}.work-index a{display:flex;flex-direction:column;padding:24px;border:1px solid var(--line);border-top:3px solid #6f8b68;background:#e1e9dc;text-decoration:none;min-width:0}.work-index a:nth-child(2){background:#dcecea;border-top-color:#4e9994}.work-index a:nth-child(3){background:#ecd0c2;border-top-color:#b65f3f}.work-index h2{font-size:26px;line-height:1.3;margin:13px 0 12px}.work-index p{font-size:16px;line-height:1.65;margin:0;color:var(--muted)}.work-index .eyebrow{font-size:13px}
.section-head{max-width:800px;margin-bottom:30px}.section-head .eyebrow{margin:0 0 14px}.section-head>p:last-child{margin-bottom:0}.psychology-feature{padding:0 0 52px;margin-bottom:48px;border-bottom:1px solid var(--line)}.psychology-feature>p:last-child{margin:25px 0 0}.concept-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.concept-card{display:flex;flex-direction:column;padding:0;border:1px solid var(--line);background:#fff;text-decoration:none;min-width:0}.concept-thumbnail{width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;object-position:center top;background:#102932}.concept-card-copy{display:flex;flex-direction:column;flex:1;padding:20px 22px}.concept-card h3{margin-bottom:12px}.concept-card p{color:var(--muted);font-size:17px}.concept-card .text-link{margin-top:auto;font-size:16px}.concept-card:hover{border-color:#9d437c}
.books{padding-bottom:48px}.book-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start}.book{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px 8px;min-width:0;align-content:start}.book-window{grid-column:1/-1;aspect-ratio:961/1536;display:flex;align-items:center;justify-content:center;background:transparent;margin-bottom:10px;overflow:visible;border:0;border-radius:0;box-shadow:none;transform:none}.book-window img{width:auto;height:100%;max-width:100%;object-fit:contain;border:0;border-radius:0;box-shadow:none;filter:none;transform:none}.book h3{font-size:22px;line-height:1.35;font-weight:500;margin:0}.book p{grid-column:2;font-size:16px;color:var(--muted);margin:0;line-height:1.8}.book-credit{margin:30px 0 0;font-size:14px;color:var(--muted)}
.nido-teaser{background:var(--plum);color:var(--paper);padding:38px 42px;margin-bottom:48px}.nido-teaser .eyebrow,.nido-teaser .subtitle{color:var(--gold)}.nido-teaser a:hover,.nido a:hover{color:#ffe1b8}.nido-teaser p:last-child{margin-bottom:0}.about{max-width:900px;padding:34px;margin-bottom:60px;background:#efe4ee;border-top:3px solid #a47094}.about .eyebrow{margin-bottom:12px}.about>p{max-width:760px}.contact{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 18px;font-size:16px;line-height:1.65}.email-link,[data-email]{overflow-wrap:anywhere}.contact-note{color:var(--muted);font-size:14px}.site-footer{border-top:1px solid var(--line);padding:28px 0 40px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px;font-size:14px}.site-footer .brand{font-size:26px}
.library-page{padding:54px 0 70px}.page-heading{max-width:850px;margin-bottom:36px}.page-heading h1,.concept-text h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(36px,4.7vw,58px);line-height:1.15;font-weight:500;margin-bottom:24px}.page-heading>p:last-child{font-size:19px;color:var(--muted)}.forthcoming{border-top:1px solid var(--line);margin-top:48px;padding-top:30px}.forthcoming h2{font-size:26px}.forthcoming ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 30px;padding-left:22px;color:var(--muted)}
.concept-page{max-width:1000px;margin:36px auto 70px}.concept-flyer{display:block;width:100%;height:auto;object-fit:contain;border:0;border-radius:0;box-shadow:none;filter:none}.flyer-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding:24px 0;border-bottom:1px solid var(--line);font-size:16px}.download-link{padding:11px 18px;border:1px solid var(--plum);background:white;font-weight:600}.concept-text{max-width:740px;margin:52px auto 0;font-size:18px;line-height:1.85}.concept-text h2{font-size:27px;line-height:1.4;margin:35px 0 16px}.concept-text h3{font-size:23px;line-height:1.4;margin:0 0 12px}.concept-text .byline{font-size:15px;color:var(--muted);margin-bottom:30px}.concept-steps{padding-left:30px;margin:32px 0}.concept-steps li{padding-left:8px;margin-bottom:30px}.concept-steps li::marker{font-weight:700;color:var(--plum)}.concept-steps h2{font-size:23px;margin:0 0 12px}.concept-steps p{margin-bottom:0}
.nido{background:var(--plum);color:var(--paper);padding:38px 42px;margin:40px 0 60px}.nido .eyebrow,.nido .subtitle{color:var(--gold)}.nido .hero-note{margin:0 0 30px;padding:0 0 28px;border-bottom:1px solid #795d7c;text-align:center;height:auto;max-height:none;overflow:visible}.hero-note p{font-family:Georgia,serif;font-size:clamp(25px,2.8vw,36px);line-height:1.5;color:#fff5ee;margin:18px 0 0;white-space:normal;overflow:visible;overflow-wrap:break-word;display:block;-webkit-line-clamp:unset}.hero-note .eyebrow{font-family:Manrope,Arial,sans-serif;font-size:14px;margin:0}.nido-field{margin:0 0 32px;width:100%}.nido-field img{width:100%;height:auto;object-fit:contain;filter:none;border-radius:0}.nido-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:36px}.nido-grid>div{min-width:0}.nido h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(38px,4.2vw,54px);font-weight:500;margin:15px 0}.nido p{color:#e5dbe4}.nido .mechanism{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-top:1px solid #795d7c;margin-top:32px;padding-top:28px}.mechanism h3{font-size:21px;line-height:1.4}.mechanism p{font-size:16px;margin-bottom:0}.nido details{margin-top:34px;border-top:1px solid #795d7c;padding-top:20px}.nido summary{cursor:pointer;color:var(--gold)}.nido details p{max-width:800px;margin-top:22px}
@media(min-width:751px) and (max-width:1050px){.work-index{gap:16px}.work-index a{padding:22px 18px}.work-index h2{font-size:23px}.nido{padding:30px}.nido-grid{gap:26px}}
@media(max-width:900px){.book-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}.banner-copy{width:33%;padding-right:18px}.banner-copy h1{font-size:clamp(42px,5.33vw,48px)}.site-header{gap:18px}nav{gap:12px 20px}}
@media(max-width:750px){.wrap{padding:0 6vw}.site-header{padding:22px 0}.brand{font-size:27px}nav a{font-size:14px}.work-index{grid-template-columns:1fr;gap:16px;margin-bottom:40px}.work-index a{padding:23px}.work-index h2{font-size:25px}.concept-grid{grid-template-columns:1fr;gap:18px}.concept-card-copy{padding:18px 20px}.section-head{margin-bottom:26px}.psychology-feature{padding-bottom:34px;margin-bottom:36px}.nido-teaser{padding:28px;margin-bottom:36px}.about{padding:27px;margin-bottom:40px}.footer-top{flex-wrap:wrap}.footer-top .brand{flex-basis:100%}.library-page{padding:38px 0 45px}.forthcoming ul{grid-template-columns:1fr}.concept-page{margin-top:24px}.concept-text{font-size:18px;margin-top:36px}.concept-text h1{font-size:36px}.concept-text h2{font-size:25px}.concept-steps h2,.concept-steps h3{font-size:22px}.nido{padding:26px 22px;margin:26px 0 40px}.nido-grid,.nido .mechanism{grid-template-columns:1fr;gap:24px}.nido h1{font-size:40px}.hero-note p{font-size:26px}.nido .subtitle{font-size:24px}}
@media(max-width:600px){.home-banner{aspect-ratio:auto;height:500px;min-height:0;margin-bottom:32px}.banner-image{object-position:right center}.banner-copy{width:min(100%,360px);padding:28px 8vw}.banner-copy h1{font-size:clamp(44px,11vw,58px)}.banner-copy p{font-size:23px;max-width:250px}.book-list{gap:28px 16px}.book{grid-template-columns:1fr}.book .number{display:none}.book h3{font-size:19px}.book p{grid-column:1;font-size:15px}.contact{display:block}.contact-note{display:block;margin-top:6px}.flyer-actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Nido homepage banner: keep the complete portrait and its natural light. */
.nido-teaser{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);align-items:center;padding:0}
.nido-banner-image{width:100%;height:auto;filter:none;border-radius:0}
.nido-banner-copy{min-width:0;padding:36px clamp(24px,4vw,56px)}
@media(max-width:750px){.nido-teaser{grid-template-columns:1fr;padding:0}.nido-banner-copy{padding:28px}}

/* Balance the Nido pull quote without forced sentence breaks. */
.nido .hero-note>p:not(.eyebrow){max-width:38ch;margin:20px auto 0;text-align:center;text-wrap:balance;font-size:clamp(25px,2.8vw,36px);line-height:1.5}
.nido .hero-note{padding-bottom:32px}

.about-photo{width:100%;height:auto;margin:0 0 30px;object-fit:contain;filter:none;border-radius:0}

.work-throughline{font-size:clamp(22px,2.3vw,30px);line-height:1.6;letter-spacing:-.015em;text-align:left;margin:0 0 32px;text-wrap:pretty;color:var(--muted)}
.work-throughline strong{color:var(--plum);font-weight:700}
.concept-group{margin:0 0 48px}.concept-group>h2{font-size:30px;margin-bottom:18px}.group-intro{max-width:760px;margin-bottom:25px}.template-context{margin:40px 0 0;padding:20px 24px;background:#f1e9f0;border-left:3px solid var(--plum)}.template-context h2{margin:0 0 12px;font-size:24px}.template-context p:last-child{margin-bottom:0}.companion-flyer{margin-top:60px;border-top:1px solid var(--line);padding-top:40px}

.flyer-terms{font-size:14px;line-height:1.65;color:var(--muted);margin:16px 0 28px;max-width:850px}.flyer-terms p{margin:0 0 4px}.library-page>.flyer-terms{margin-top:-12px;margin-bottom:36px}

.home-guide-group{margin-top:40px}.home-guide-group>h3{font-size:28px;margin-bottom:18px}.home-guide-group>p{max-width:760px}.template-trio .concept-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-companion{margin:22px 0 0;font-size:17px}@media(max-width:750px){.template-trio .concept-grid{grid-template-columns:1fr}}

.book .book-status{font-size:13px;line-height:1.5}.book-imprint{text-transform:none}.publication-news{margin:30px 0 0;font-size:17px}.publication-news+.book-credit{margin-top:14px}
.book h3 a{text-decoration:none}.book h3 a:hover{text-decoration:underline}.book .book-excerpt-link{font-size:15px}.book-page{padding:38px 0 64px}.book-page-header{display:grid;grid-template-columns:minmax(180px,300px) minmax(0,1fr);gap:48px;align-items:center;max-width:1000px;margin:30px auto 56px}.book-page-cover{width:100%;height:auto;border-radius:0;box-shadow:none}.book-page-header h1{font-size:clamp(32px,4.2vw,50px);font-weight:500;line-height:1.2}.book-page-header .book-status{font-size:14px;color:var(--muted)}.book-excerpt{max-width:680px;margin:0 auto;font-size:19px;line-height:1.85}.book-excerpt p{margin:0 0 1.3em;white-space:normal}.book-excerpt .excerpt-label{font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:30px}@media(max-width:650px){.book-page-header{grid-template-columns:1fr;gap:26px}.book-page-cover{max-width:260px;margin:auto}.book-excerpt{font-size:18px}}
.home-banner .banner-copy{transform:translateX(clamp(10px,1.25vw,20px))}
.about{width:100%;max-width:none;text-align:left;padding:clamp(27px,4vw,52px)}.about>p{margin-left:0;margin-right:0}.about-photo{max-width:none;margin-left:0;margin-right:0}.about .contact{justify-content:flex-start;text-align:left;margin-left:0;margin-right:0}

.practice-page{max-width:760px;margin:54px auto 80px;font-size:19px;line-height:1.85}.practice-page h1{font-size:clamp(36px,4.7vw,58px);font-weight:500;margin-bottom:32px}.practice-page .contact{margin-top:36px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}@media(max-width:600px){.practice-page{margin:36px auto 54px;font-size:18px}}
