@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--navy:#142738;--navy2:#203b4a;--teal:#1d887f;--teal-light:#cfe6df;--cream:#f5f0e7;--paper:#fffdf8;--gold:#b58b4b;--ink:#1d2a31;--muted:#667177;--line:#ded7ca;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1160px,calc(100% - 48px));margin-inline:auto}.site-header{height:auto;min-height:88px;padding:20px max(24px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--paper);border-bottom:1px solid rgba(20,39,56,.08);position:relative;z-index:5}.brand{display:flex;flex-direction:column;line-height:1.2}.brand-name{font-weight:700;letter-spacing:.12em;font-size:1.05rem;color:var(--navy)}.brand-sub{font-size:.62rem;letter-spacing:.11em;color:var(--muted);margin-top:7px}.main-nav{display:flex;align-items:center;gap:25px;font-size:.83rem}.main-nav a:hover,.text-link:hover{color:var(--teal)}.nav-cta{border:1px solid var(--navy);padding:10px 17px}.menu-toggle{display:none;background:none;border:0;font-size:1.5rem;color:var(--navy)}.hero{min-height:620px;padding-block:72px 82px;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.hero-copy{padding-block:20px}.eyebrow{font-size:.7rem;letter-spacing:.16em;font-weight:700;color:var(--gold);margin:0 0 18px;text-transform:uppercase}.hero h1,.page-hero h1,.dss-hero h1{font:500 clamp(2.7rem,5.2vw,4.7rem)/1.1 var(--serif);letter-spacing:-.035em;color:var(--navy);margin:0 0 25px}.hero h1 em,.page-hero h1 em,.dss-hero h1 em{font-weight:500;color:var(--teal);}.lead{font-size:1.1rem;line-height:1.8;color:#59666b;max-width:620px}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:14px 20px;font-size:.85rem;font-weight:600;border:1px solid transparent;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--navy);color:white}.button-dark:hover{background:var(--teal)}.button-outline{border-color:var(--navy);color:var(--navy)}.button-light{background:var(--cream);color:var(--navy)}.hero-visual{position:relative;min-height:440px;display:flex;justify-content:center;align-items:center;background:#e7e0d4}.portrait{width:78%;height:440px;object-fit:cover;object-position:center 25%;filter:saturate(.82)}.portrait-placeholder{height:420px;width:78%;display:grid;place-items:center;background:var(--teal-light);font:5rem var(--serif);color:var(--navy)}.floating-note{position:absolute;bottom:28px;left:-22px;display:flex;align-items:center;gap:15px;background:var(--paper);padding:18px 22px;box-shadow:0 14px 35px #14273815;font:1rem/1.5 var(--serif);color:var(--navy)}.note-mark{font-size:2rem;color:var(--gold)}.intro-band{background:var(--cream);padding:55px 0}.intro-grid{display:grid;grid-template-columns:.35fr 1fr;gap:30px;align-items:start}.intro-statement{font:500 clamp(1.55rem,2.7vw,2.4rem)/1.45 var(--serif);margin:0;color:var(--navy);max-width:850px}.intro-statement strong{color:var(--teal);font-weight:500}.section{padding-block:90px}.book-feature{display:grid;grid-template-columns:.7fr 1fr;gap:90px;align-items:center}.book-art{display:flex;justify-content:center;align-items:center;min-height:360px;background:#ede7dc;padding:35px}.book-art img{width:min(270px,100%);max-height:420px;object-fit:contain;box-shadow:0 20px 40px #14273825}.book-placeholder{width:240px;min-height:340px;background:var(--navy);color:var(--cream);display:flex;align-items:center;justify-content:center;text-align:center;font:1.7rem/1.5 var(--serif);letter-spacing:.06em;padding:25px;box-shadow:0 20px 40px #14273825}.section h2,.section-copy h2,.reflection-section h2,.social-band h2,.learn-panel h2{font:500 clamp(2rem,3.5vw,3.2rem)/1.2 var(--serif);color:var(--navy);margin:0 0 22px}.section-copy p:not(.eyebrow),.prose p{color:#5b676c;line-height:1.9}.text-link{display:inline-flex;gap:12px;font-size:.9rem;font-weight:700;color:var(--teal);margin-top:12px}.safe-space{background:var(--navy);color:white;padding:85px 0}.safe-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.eyebrow-light{color:#d8b878}.safe-space h2{font:500 clamp(3rem,5vw,4.6rem)/1.02 var(--serif);margin:0 0 22px}.safe-space h2 em{color:#7fc4b8;font-weight:500}.safe-space .safe-grid>div:first-child>p:not(.eyebrow){color:#d0d8dd;max-width:470px;margin-bottom:28px}.safe-cards{display:grid;gap:12px}.mini-card{border:1px solid #ffffff30;padding:20px 22px;display:grid;grid-template-columns:35px 1fr;gap:2px 15px;transition:background .2s}.mini-card:hover{background:#ffffff0c}.mini-card span{grid-row:span 2;color:#d8b878;font-size:.75rem}.mini-card strong{font:500 1.2rem var(--serif)}.mini-card small{color:#bac7ce}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.post-card{border:1px solid var(--line);padding:27px;background:white}.post-card h3,.post-card h2{font:500 1.45rem/1.3 var(--serif);color:var(--navy);margin:0 0 12px}.post-card p:not(.eyebrow){font-size:.92rem;color:var(--muted)}.site-footer{background:#101f2c;color:#d4dde1;padding:45px max(24px,calc((100vw - 1160px)/2)) 25px;display:grid;grid-template-columns:1fr auto;gap:25px}.footer-brand{font-weight:700;letter-spacing:.12em;color:white}.site-footer p{font-size:.85rem;color:#aebbc2}.footer-links{display:flex;gap:20px;flex-wrap:wrap;font-size:.82rem}.copyright{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:18px;margin:0}.page-hero{padding-block:90px 55px}.page-hero h1{max-width:900px}.about-layout,.book-page,.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.about-portrait{width:100%;max-height:550px;object-fit:cover;object-position:center 20%}.prose h2{font:500 2rem/1.25 var(--serif);color:var(--navy)}.note-box{background:var(--cream);border-left:3px solid var(--gold);padding:15px 18px;font-size:.9rem}.book-page{grid-template-columns:.7fr 1.3fr}.book-page-art{background:var(--cream);padding:35px;display:flex;justify-content:center}.book-page-art img{width:min(320px,100%);max-height:520px;object-fit:contain;box-shadow:0 20px 40px #14273825}.dss-hero{background:var(--navy);color:white;padding:90px 0}.dss-hero-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:60px;align-items:center}.dss-hero h1{color:white;max-width:800px}.dss-hero .lead{color:#d3dde3;max-width:720px;margin-bottom:30px}.dss-mark{border:1px solid #ffffff35;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center;color:#e2c17e;letter-spacing:.12em;font-size:.8rem;line-height:1.8}.dss-icon{font-size:5rem;color:#78c5b8}.section-intro{max-width:720px;color:var(--muted);line-height:1.8}.video-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;margin-top:40px}.video-placeholder{aspect-ratio:16/9;background:linear-gradient(135deg,#203b4a,#101f2c);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#d4e5e2;text-align:center;padding:20px}.play-icon{display:grid;place-items:center;border:1px solid #ffffff80;width:65px;height:65px;border-radius:50%;padding-left:4px;color:white}.video-copy h3{font:500 1.8rem/1.3 var(--serif);color:var(--navy)}.video-copy p:not(.eyebrow){color:var(--muted);font-size:.93rem}.reflection-section{background:var(--cream);padding:85px 0}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}.topic-grid article{background:var(--paper);padding:28px}.topic-number{font-size:.68rem;letter-spacing:.14em;color:var(--gold);font-weight:700}.topic-grid h3{font:500 1.5rem var(--serif);color:var(--navy)}.topic-grid p{font-size:.9rem;color:var(--muted)}.learn-panel{display:flex;justify-content:space-between;gap:40px;align-items:center;background:#e6eee9;padding:38px}.learn-panel p:not(.eyebrow){max-width:700px;color:#53645f}.social-band{background:var(--teal);padding:65px 0;color:white}.social-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.social-band h2{color:white;margin-bottom:10px}.social-band p:not(.eyebrow){color:#e0f1ed;max-width:580px}.social-links{display:flex;flex-direction:column;gap:10px;min-width:180px}.social-links a,.social-pending{border-bottom:1px solid #ffffff50;padding:8px 0;font-size:.9rem}.social-links a:hover{color:#f2d8a4}.social-pending{color:#d0e8e3}.post-grid-wide{grid-template-columns:repeat(2,1fr)}.empty-state{grid-column:1/-1;padding:45px;background:var(--cream)}.article-page{max-width:820px;padding-block:70px 100px}.article-page h1{font:500 clamp(2.4rem,5vw,4rem)/1.15 var(--serif);color:var(--navy);margin:25px 0}.article-content{font-size:1.05rem;line-height:2;white-space:normal;margin-top:35px}.contact-form{display:grid;gap:18px;background:var(--cream);padding:30px}.contact-form label{display:grid;gap:7px;font-size:.85rem;font-weight:600}.contact-form input,.contact-form textarea{font:inherit;padding:12px;border:1px solid #cfc8bc;background:white;width:100%}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--teal);border-color:transparent}.success-message{color:#146c43}.error-message{color:#a32626}
@media(max-width:850px){.main-nav{gap:13px}.hero{gap:35px}.book-feature,.about-layout,.book-page{gap:45px}.safe-grid{gap:35px}.dss-hero-grid{gap:35px}}
@media(max-width:700px){.container{width:min(100% - 34px,560px)}.site-header{padding:18px 17px;min-height:75px}.brand-name{font-size:.9rem}.brand-sub{font-size:.55rem}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px;box-shadow:0 15px 20px #14273812;flex-direction:column;align-items:stretch}.main-nav.is-open{display:flex}.main-nav a{padding:8px 0}.nav-cta{text-align:center}.hero{grid-template-columns:1fr;padding-block:48px 60px;gap:35px}.hero h1,.page-hero h1,.dss-hero h1{font-size:clamp(2.55rem,12vw,3.7rem)}.hero-visual{min-height:340px}.portrait,.portrait-placeholder{height:340px}.floating-note{left:-5px;bottom:15px}.intro-grid{grid-template-columns:1fr;gap:5px}.section{padding-block:60px}.book-feature,.about-layout,.book-page,.contact-layout,.video-feature{grid-template-columns:1fr;gap:30px}.book-art{min-height:280px}.book-art img{max-height:350px}.safe-grid,.dss-hero-grid{grid-template-columns:1fr}.safe-space{padding:60px 0}.safe-cards{margin-top:10px}.post-grid,.post-grid-wide,.topic-grid{grid-template-columns:1fr}.section-heading,.social-inner,.learn-panel{align-items:flex-start;flex-direction:column}.dss-hero{padding:60px 0}.dss-mark{max-width:260px;margin-inline:auto;width:100%}.site-footer{grid-template-columns:1fr;padding:35px 20px 20px}.footer-links{gap:13px}.copyright{grid-column:auto}.page-hero{padding-block:60px 25px}.contact-form{padding:22px}.learn-panel{padding:25px}}


/* SITE-WIDE PAGE REBUILD: full-width hero, unified navigation and new service pages */
.main-nav { gap: 17px; font-size: .78rem; }
.main-nav a[aria-current="page"]:not(.nav-cta) { color: var(--teal); }
.full-bleed-hero { width: 100%; margin: 0; padding: 0; background: var(--cream); border-bottom: 1px solid var(--line); }
.page-hero-inner { padding-top: 76px; padding-bottom: 62px; }
.page-hero-inner h1 { max-width: 900px; font: 500 clamp(2.7rem,5.2vw,4.7rem)/1.1 var(--serif); letter-spacing: -.035em; color: var(--navy); margin: 0 0 22px; }
.page-hero-inner h1 em { color: var(--teal); font-weight: 500; }
.page-hero-inner .lead { max-width: 700px; margin-top: 0; }
.service-band { background: #f5f0e7; padding: 78px 0 86px; }
.service-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin-top: 34px; }
.service-card { display: flex; flex-direction: column; align-items: flex-start; min-height: 290px; padding: 28px; background: var(--paper); border: 1px solid var(--line); transition: transform .2s, box-shadow .2s; }
.service-card:hover { transform: translateY(-3px); box-shadow: 0 15px 35px #14273812; }
.service-icon { color: var(--gold); font-size: .75rem; font-weight: 700; letter-spacing: .14em; }
.service-card h3 { margin: 22px 0 8px; color: var(--navy); font: 500 1.65rem/1.25 var(--serif); }
.service-card p { color: var(--muted); font-size: .92rem; line-height: 1.8; }
.service-card .text-link { margin-top: auto; padding-top: 15px; }
.service-card-dark { background: var(--navy); border-color: var(--navy); }
.service-card-dark h3 { color: white; }
.service-card-dark p { color: #d0d8dd; }
.service-card-dark .text-link { color: #d8b878; }
.preview-layout { max-width: 900px; padding-top: 68px; padding-bottom: 75px; }
.preview-intro { max-width: 700px; margin-bottom: 30px; }
.preview-intro h2 { font: 500 clamp(2rem,3.5vw,3rem)/1.2 var(--serif); color: var(--navy); margin: 0 0 14px; }
.preview-intro > p:not(.eyebrow) { color: var(--muted); line-height: 1.85; }
.preview-accordion { border-top: 1px solid var(--line); }
.preview-item { border-bottom: 1px solid var(--line); }
.preview-item summary { display: flex; align-items: center; gap: 18px; padding: 22px 4px; cursor: pointer; list-style: none; color: var(--navy); }
.preview-item summary::-webkit-details-marker { display: none; }
.preview-index { flex: 0 0 38px; color: var(--gold); font-size: .76rem; letter-spacing: .12em; font-weight: 700; }
.preview-item summary strong { display: block; font: 500 1.22rem/1.4 var(--serif); }
.preview-item summary small { display: block; color: var(--muted); font-size: .8rem; margin-top: 3px; }
.preview-symbol { width: 22px; height: 22px; flex: 0 0 22px; margin-left: auto; border: 1px solid var(--gold); border-radius: 50%; position: relative; }
.preview-symbol:before,.preview-symbol:after { content: ''; position: absolute; width: 8px; height: 1px; background: var(--navy); top: 10px; left: 6px; }
.preview-symbol:after { transform: rotate(90deg); }
.preview-item[open] .preview-symbol:after { transform: rotate(0); }
.preview-content { padding: 0 20px 26px 56px; color: #536168; line-height: 1.9; }
.preview-content p { margin: 0 0 13px; }
.contents-group-label { margin-top: 20px !important; color: var(--gold); font-size: .68rem; font-weight: 700; letter-spacing: .14em; }
.contents-line { display: flex; gap: 14px; align-items: baseline; padding: 8px 0; border-bottom: 1px solid #ded7ca75; }
.contents-line:last-child { border-bottom: 0; }
.chapter-line span { flex: 0 0 24px; color: var(--gold); font-size: .78rem; font-weight: 700; }
.chapter-line strong { color: var(--navy); font-weight: 500; }
.reading-copy { max-width: 740px; }
.reading-copy blockquote { margin: 24px 0; padding: 8px 0 8px 20px; border-left: 3px solid var(--gold); color: var(--navy); font: 500 1.3rem/1.6 var(--serif); }
.stand-list { padding-top: 8px; }
.stand-list > div { display: flex; gap: 14px; align-items: flex-start; padding: 13px 0; border-bottom: 1px solid var(--line); }
.stand-list > div:last-child { border-bottom: 0; }
.stand-list > div > strong { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; background: var(--navy); color: white; }
.stand-list b { display: block; color: var(--navy); }
.stand-list small { display: block; color: var(--muted); font-size: .85rem; }
.preview-end { margin-top: 58px; padding: 40px 24px; background: var(--cream); text-align: center; }
.preview-end h2 { margin: 8px 0 12px; color: var(--navy); font: 500 clamp(1.9rem,3.5vw,2.6rem)/1.2 var(--serif); }
.preview-end > p:not(.eyebrow) { color: var(--muted); }
.preview-end .button-row { justify-content: center; }
.learning-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 65px; align-items: center; }
.learning-grid h2 { margin: 0 0 18px; color: var(--navy); font: 500 clamp(2rem,3.5vw,3rem)/1.2 var(--serif); }
.learning-grid p:not(.eyebrow) { color: var(--muted); line-height: 1.85; }
.learning-note { padding: 34px; background: var(--navy); color: white; }
.learning-note > span { color: #d8b878; font-size: .7rem; letter-spacing: .15em; font-weight: 700; }
.learning-note h3 { margin: 16px 0; font: 500 1.7rem/1.3 var(--serif); }
.learning-note ul { margin: 0; padding-left: 20px; color: #d0d8dd; line-height: 2; }
.learning-note-light { background: #e5eee9; color: var(--navy); }
.learning-note-light ul { color: #53645f; }
.learning-note-light .small-note { font-size: .82rem; margin-top: 18px; }
@media(max-width:1000px) { .main-nav { gap: 11px; font-size: .73rem; } .site-header { gap: 18px; } .brand-name { font-size: .95rem; } .brand-sub { font-size: .56rem; } }
@media(max-width:850px) { .main-nav { gap: 13px; } .service-grid { grid-template-columns: 1fr 1fr; } .learning-grid { gap: 35px; } }
@media(max-width:700px) { .main-nav { gap: 0; } .service-grid,.learning-grid { grid-template-columns: 1fr; } .page-hero-inner { padding-top: 48px; padding-bottom: 38px; } .preview-layout { padding-top: 48px; padding-bottom: 55px; } .preview-item summary { gap: 12px; padding: 18px 0; } .preview-index { flex-basis: 28px; } .preview-item summary strong { font-size: 1.1rem; } .preview-content { padding-left: 40px; padding-right: 2px; } .service-card { min-height: 250px; } .learning-note { padding: 26px; } }


.category-filter{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px}.category-filter a{display:inline-flex;padding:9px 14px;border:1px solid var(--line);border-radius:999px;color:var(--navy);text-decoration:none;font-size:.88rem}.category-filter a:hover,.category-filter a.active{background:var(--navy);border-color:var(--navy);color:#fff}

/* Article featured images */
.post-card{overflow:hidden;padding:0 0 27px}.post-card>.eyebrow,.post-card>h2,.post-card>h3,.post-card>p:not(.eyebrow),.post-card>.text-link{margin-left:27px;margin-right:27px}.post-card-image{display:block;aspect-ratio:16/9;overflow:hidden;margin:0 0 23px;background:var(--cream)}.post-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.post-card-image:hover img{transform:scale(1.03)}.article-featured-image{width:100%;max-height:470px;aspect-ratio:16/9;object-fit:cover;margin:30px 0 38px}.featured-image-current{display:grid;gap:8px;margin:0 0 15px}.featured-image-current img{width:100%;max-height:180px;object-fit:cover;border:1px solid #ddd}.checkbox-label{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:8px!important;font-weight:400!important}.checkbox-label input{width:auto!important}
