:root{--ink: #111d29;--ink-soft: #172635;--paper: #ffffff;--paper-soft: #f6f8f9;--text: #14202b;--text-on-dark: #f7f9f8;--muted: #5d6873;--muted-on-dark: #c7d0d7;--sage: #a8b894;--sage-deep: #66806b;--periwinkle: #8299e6;--line: #d9dfe3;--line-on-dark: rgba(255, 255, 255, .2);--serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--sans: Aptos, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--shell: 1200px;--radius: 18px;--shadow: 0 24px 70px rgba(3, 13, 22, .28);--motion-fast: .16s;--motion-base: .42s;--motion-slow: .65s;--motion-ease-out: cubic-bezier(.22, 1, .36, 1);--motion-ease-standard: cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}section[id],details[id]{scroll-margin-top:112px}img,svg{display:block;max-width:100%}figure,blockquote{margin:0}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a:focus-visible,summary:focus-visible{outline:3px solid var(--periwinkle);outline-offset:4px;border-radius:4px}.shell{width:min(var(--shell),calc(100% - 72px));margin-inline:auto}.skip-link{position:fixed;top:12px;left:12px;z-index:1000;padding:10px 14px;border-radius:6px;background:var(--paper);color:var(--text);font-weight:700;transform:translateY(-160%);transition:transform .16s ease}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:100;border-bottom:1px solid var(--line-on-dark);background:#111d29f7;color:var(--text-on-dark);backdrop-filter:blur(14px)}.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{display:inline-flex;flex-direction:column;gap:2px;flex:0 0 auto;text-decoration:none}.brand-name,.footer-brand{font-family:var(--serif);font-size:23px;line-height:1.1;letter-spacing:-.015em}.brand-service,.footer-service{color:var(--sage);font-size:12px;line-height:1.2;letter-spacing:.22em;text-transform:uppercase}.desktop-nav{display:flex;align-items:center;gap:clamp(16px,2.1vw,34px)}.desktop-nav a{position:relative;padding:10px 0;color:var(--muted-on-dark);font-size:14px;text-decoration:none}.desktop-nav a:after{content:"";position:absolute;right:0;bottom:2px;left:0;height:2px;background:var(--sage);transform:scaleX(0);transform-origin:center;transition:transform .16s ease}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--text-on-dark)}.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{transform:scaleX(1)}.mobile-menu{display:none;position:relative}.mobile-menu summary{cursor:pointer;list-style:none;padding:9px 13px;border:1px solid var(--line-on-dark);border-radius:7px;font-weight:700}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;top:calc(100% + 14px);right:0;min-width:250px;padding:10px;border:1px solid var(--line-on-dark);border-radius:10px;background:var(--ink);box-shadow:var(--shadow)}.mobile-menu nav a{display:block;padding:11px 12px;border-radius:6px;color:var(--muted-on-dark);text-decoration:none}.mobile-menu nav a:hover,.mobile-menu nav a[aria-current=page]{background:#ffffff12;color:var(--text-on-dark)}h1,h2,h3{margin-top:0;font-family:var(--serif);font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(48px,6.2vw,86px);line-height:.98}h2{font-size:clamp(36px,4vw,58px);line-height:1.04}h3{font-size:clamp(24px,2.2vw,32px);line-height:1.15}p{margin:0 0 1em}.home-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 22% 20%,rgba(130,153,230,.08),transparent 32%),radial-gradient(circle at 80% 70%,rgba(168,184,148,.08),transparent 28%),var(--ink);color:var(--text-on-dark)}.hero-grid{min-height:650px;padding-block:54px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:clamp(52px,8vw,112px);align-items:center}.hero-copy{padding-left:38px}.hero-copy h1{max-width:10.5ch;margin-bottom:26px}.hero-lead{max-width:610px;margin-bottom:28px;color:var(--muted-on-dark);font-size:clamp(19px,2vw,25px);line-height:1.45}.hero-proof{margin:26px 0 0;color:var(--sage);font-size:16px}.hero-portrait{overflow:hidden;border:1px solid var(--line-on-dark);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow)}.hero-portrait img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.button-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.button-row-center{justify-content:center}.button{min-height:50px;padding:12px 23px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:6px;font-size:16px;font-weight:700;line-height:1.2;text-decoration:none;transition:transform .15s ease,background .15s ease,border-color .15s ease}.button:hover{transform:translateY(-2px)}.button-primary{border-color:var(--sage);background:var(--sage);color:var(--ink)}.button-primary:hover{background:#b8c6a6}.button-outline-light{border-color:var(--periwinkle);color:#b8c5ff;background:transparent}.button-outline-light:hover{background:#8299e61f}.button-outline-dark{border-color:var(--periwinkle);color:#526ec9;background:transparent}.button-outline-dark:hover{background:#8299e614}.section-heading{max-width:760px;margin-bottom:44px}.section-heading h2{margin-bottom:14px}.section-heading h2:after,.faq-intro h1:after{content:"";display:block;width:54px;height:3px;margin-top:24px;background:var(--sage)}.section-heading p{margin:0;color:var(--muted);font-size:18px}.section-heading-light{color:var(--text-on-dark)}.section-heading-light p{color:var(--muted-on-dark)}.approach-preview,.audience-section,.rates-section{padding-block:92px;background:var(--paper)}.approach-preview{border-bottom:1px solid var(--line)}.principle-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.principle-preview{min-height:245px;padding:0 34px 10px;border-left:1px solid var(--line)}.principle-preview:first-child{padding-left:0;border-left:0}.principle-marker{margin-bottom:18px;display:flex;gap:16px;align-items:center;color:var(--sage-deep);font-family:var(--serif);font-size:28px}.principle-marker i{height:1px;flex:1;background:var(--sage)}.principle-preview:nth-child(2) .principle-marker{color:var(--periwinkle)}.principle-preview:nth-child(2) .principle-marker i{background:var(--periwinkle)}.principle-preview h3{margin-bottom:12px;font-size:27px}.principle-preview p{margin:0;color:var(--muted)}.approach-footer{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:40px;align-items:flex-start}.approach-footer p{max-width:620px;margin:0;color:var(--muted);font-size:14px}.text-link{color:#526ec9;font-weight:700}.text-link:after{content:" →"}.audience-section{padding-top:84px}.audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.audience-path{padding-right:36px}.audience-path+.audience-path{padding-left:36px;border-left:1px solid var(--line)}.audience-rule{width:100%;height:3px;margin-bottom:26px;background:var(--sage)}.audience-rule-alt{background:var(--periwinkle)}.audience-path h3{margin-bottom:14px}.audience-path p{min-height:80px;color:var(--muted)}.expertise-section{padding-block:96px;background:var(--ink);color:var(--text-on-dark)}.expertise-list{margin:0;padding:0;border-top:1px solid var(--line-on-dark);list-style:none}.expertise-list li{min-height:64px;padding:16px 0;border-bottom:1px solid var(--line-on-dark);display:flex;justify-content:space-between;gap:24px;align-items:center;color:var(--muted-on-dark);font-size:20px;transition:color .15s ease,padding .15s ease}.expertise-list li:hover{padding-left:8px;color:var(--text-on-dark)}.expertise-list svg{width:25px;height:25px;flex:0 0 auto;color:var(--sage);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.rates-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(480px,1.2fr);gap:clamp(64px,9vw,130px);align-items:center}.rate-frame{border:1px solid var(--sage-deep);border-radius:8px;padding:14px 30px}.rate-row{min-height:70px;display:flex;justify-content:space-between;gap:24px;align-items:center;border-bottom:1px solid var(--line);font-size:18px}.rate-row:last-child{border-bottom:0}.rate-row>span:last-child{font-weight:800}.contact-band{padding-block:72px;background:radial-gradient(circle at 88% 45%,rgba(130,153,230,.1),transparent 30%),var(--ink);color:var(--text-on-dark)}.contact-band-inner{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:42px;align-items:center}.contact-rule{height:3px;background:linear-gradient(90deg,var(--sage),var(--periwinkle))}.contact-band h2{max-width:650px;margin-bottom:10px}.contact-band p{margin:0;color:var(--muted-on-dark)}.site-footer{padding-block:34px;border-top:1px solid var(--line-on-dark);background:var(--ink);color:var(--text-on-dark)}.footer-inner{display:flex;justify-content:space-between;gap:36px;align-items:center}.footer-brand{text-decoration:none}.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 22px}.footer-links a{color:var(--muted-on-dark);font-size:13px}.footer-links a:hover{color:var(--text-on-dark)}.page-intro,.faq-intro,.guide-intro{padding-block:64px 70px;background:var(--paper)}.page-intro-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(320px,1.15fr);gap:80px;align-items:center}.page-intro h1,.faq-intro h1,.guide-intro h1{margin-bottom:24px;color:var(--ink)}.page-intro p,.guide-intro p{max-width:700px;margin:0;color:var(--muted);font-size:19px}.intro-rules{display:grid;grid-template-columns:1fr 26px 1fr;gap:14px;align-items:center}.intro-rules i{height:2px;background:var(--sage)}.intro-rules i:last-child{background:var(--periwinkle)}.intro-rules span{width:2px;height:32px;background:var(--periwinkle);justify-self:center}.principles-stage{padding-block:54px;background:var(--ink);color:var(--text-on-dark)}.principles-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:50px}.principles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.principle-detail{min-height:190px;padding:26px 30px;border-bottom:1px solid var(--line-on-dark);display:grid;grid-template-columns:58px 1fr;gap:18px}.principle-detail:nth-child(odd){padding-left:0;border-right:1px solid var(--line-on-dark)}.principle-number{color:var(--sage);font-family:var(--serif);font-size:55px;line-height:.9}.principle-detail h2{margin-bottom:10px;color:var(--text-on-dark);font-size:28px}.principle-detail p{margin:0;color:var(--muted-on-dark);font-size:15px}.approach-quote{padding:30px 0 30px 44px;border-left:2px solid var(--periwinkle);align-self:stretch}.approach-quote p{color:#b8c5ff;font-family:var(--serif);font-size:clamp(38px,4vw,56px);font-style:italic;line-height:1.1}.approach-quote footer{color:var(--muted-on-dark);font-size:16px}.approach-cta{padding-block:64px}.narrow-center{text-align:center}.narrow-center h2{margin-bottom:26px}.inline-links{margin-top:22px;display:flex;justify-content:center;gap:40px}.faq-intro{padding-bottom:32px}.faq-intro h1{margin-bottom:20px}.faq-intro>.shell>p{max-width:930px;margin-bottom:8px;color:var(--muted)}.faq-intro .faq-lead{color:#526ec9;font-family:var(--serif);font-size:clamp(23px,2.5vw,34px);line-height:1.25}.faq-section{padding:38px 0 80px;border-top:1px solid var(--line)}.faq-layout{display:grid;grid-template-columns:220px minmax(0,1fr) 280px;gap:42px;align-items:start}.question-index{position:sticky;top:124px}.question-index>div{margin-bottom:12px;color:var(--sage-deep);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.question-index a{padding:8px 0;display:grid;grid-template-columns:28px 1fr;gap:8px;color:var(--muted);font-size:12px;line-height:1.35;text-decoration:none}.question-index a:hover{color:var(--ink)}.question-index a span{color:var(--sage-deep)}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;min-height:62px;padding:15px 4px;display:grid;grid-template-columns:42px 1fr 24px;gap:12px;align-items:center;list-style:none;color:var(--ink);font-weight:750}.faq-item summary::-webkit-details-marker{display:none}.faq-item[open] summary{color:var(--sage-deep)}.faq-number{font-size:13px}.faq-question{font-size:16px}.faq-chevron{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7;transition:transform .16s ease}.faq-item[open] .faq-chevron{transform:rotate(180deg)}.faq-answer{max-width:760px;padding:0 40px 24px 58px;color:var(--muted)}.faq-answer p:last-child{margin-bottom:0}.faq-callout{position:sticky;top:124px;padding:42px 34px;border-left:3px solid var(--periwinkle);background:var(--paper-soft)}.faq-callout h2{margin-bottom:20px;font-size:35px}.faq-callout p{margin-bottom:26px;color:var(--muted)}.guide-intro h1{max-width:1160px;font-size:clamp(45px,5vw,74px)}.guide-section{padding-bottom:48px}.guide-list{border-top:1px solid var(--line)}.guide-step{min-height:106px;padding:22px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:92px minmax(260px,.8fr) minmax(340px,1.2fr);gap:34px;align-items:center}.guide-number{padding-right:28px;border-right:1px solid var(--sage);color:var(--periwinkle);font-family:var(--serif);font-size:54px;line-height:1}.guide-step h2{margin:0;font-family:var(--sans);font-size:22px;font-weight:750;letter-spacing:-.015em;line-height:1.25}.guide-step p{margin:0;color:var(--muted)}.guide-callout{padding-bottom:72px}.guide-callout-inner{padding:42px;border-radius:8px;background:var(--ink);color:var(--text-on-dark);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);gap:60px;align-items:center}.guide-callout h2{margin:0;font-size:42px}.guide-callout p{color:var(--muted-on-dark)}@media(max-width:1120px){.shell{width:min(var(--shell),calc(100% - 48px))}.desktop-nav{display:none}.mobile-menu{display:block}.hero-copy{padding-left:0}.faq-layout{grid-template-columns:minmax(0,1fr) 270px}.question-index{display:none}.contact-band-inner{grid-template-columns:70px minmax(0,1fr)}.contact-band-inner .button-row{grid-column:2}}@media(max-width:820px){.shell{width:min(var(--shell),calc(100% - 36px))}.header-inner{min-height:76px}.brand-name{font-size:19px}.hero-grid{min-height:auto;padding-block:62px;grid-template-columns:1fr;gap:44px}.hero-copy h1{max-width:12ch}.hero-portrait{width:min(100%,520px)}.approach-preview,.audience-section,.rates-section,.expertise-section{padding-block:72px}.principle-preview-grid,.audience-grid{grid-template-columns:1fr}.principle-preview{min-height:0;padding:28px 0;border-top:1px solid var(--line);border-left:0}.principle-preview:first-child{border-top:0}.approach-footer{flex-direction:column}.audience-path,.audience-path+.audience-path{padding:30px 0;border-top:1px solid var(--line);border-left:0}.audience-path:first-child{border-top:0}.audience-path p{min-height:0}.rates-layout,.page-intro-grid,.principles-layout,.faq-layout,.guide-callout-inner{grid-template-columns:1fr}.intro-rules{display:none}.faq-callout{position:static}.guide-step{grid-template-columns:64px 1fr;gap:18px}.guide-number{grid-row:1 / span 2;padding-right:16px;font-size:42px}.guide-step p{grid-column:2}.contact-band-inner{grid-template-columns:1fr}.contact-band-inner .button-row{grid-column:1}.contact-rule{width:90px}.footer-inner{align-items:flex-start;flex-direction:column}.footer-links{justify-content:flex-start}}@media(max-width:560px){.shell{width:min(var(--shell),calc(100% - 28px))}h1{font-size:clamp(42px,13vw,58px)}h2{font-size:clamp(34px,10vw,46px)}.home-hero .button{flex:1 1 140px}.hero-proof{font-size:14px}.section-heading{margin-bottom:32px}.expertise-list li{font-size:17px}.rate-frame{padding-inline:18px}.rate-row{font-size:16px}.principles-grid{grid-template-columns:1fr}.principle-detail,.principle-detail:nth-child(odd){padding:26px 0;border-right:0}.approach-quote{padding-left:24px}.inline-links{gap:18px;flex-direction:column}.faq-intro,.guide-intro,.page-intro{padding-block:48px}.faq-item summary{grid-template-columns:32px 1fr 20px}.faq-answer{padding-left:44px;padding-right:8px}.faq-callout,.guide-callout-inner{padding:28px 24px}.guide-step{grid-template-columns:48px 1fr}.guide-number{font-size:34px}.guide-step h2{font-size:19px}.guide-callout{padding-bottom:48px}.guide-callout h2{font-size:34px}.contact-band .button{width:100%}}@view-transition{navigation:auto}::view-transition-old(root){animation:page-leave .17s ease-in both}::view-transition-new(root){animation:page-enter .26s var(--motion-ease-out) both}@keyframes page-leave{to{opacity:0;transform:translateY(-3px)}}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}}@keyframes motion-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes portrait-arrive{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.hero-copy h1,.hero-copy .hero-lead,.hero-copy .button-row,.hero-copy .hero-proof,.hero-portrait{animation:motion-rise var(--motion-slow) var(--motion-ease-out) both}.hero-copy .hero-lead{animation-delay:70ms}.hero-copy .button-row{animation-delay:.14s}.hero-copy .hero-proof{animation-delay:.21s}.hero-portrait{animation-name:portrait-arrive;animation-duration:.76s;animation-delay:90ms}.page-intro h1,.faq-intro h1,.guide-intro h1{animation:motion-rise .56s var(--motion-ease-out) both}.page-intro p,.faq-intro p,.guide-intro p,.intro-rules{animation:motion-rise .56s var(--motion-ease-out) 80ms both}.reveal-pending{opacity:0;transform:translateY(18px);transition:opacity var(--motion-base) var(--motion-ease-out),transform var(--motion-base) var(--motion-ease-out);transition-delay:var(--reveal-delay, 0ms);will-change:opacity,transform}.reveal-pending.is-visible{opacity:1;transform:translateY(0);will-change:auto}.section-heading h2:after,.principle-marker i,.audience-rule{transform-origin:left;transition:transform .56s var(--motion-ease-out)}.reveal-pending.section-heading h2:after,.reveal-pending .principle-marker i,.reveal-pending .audience-rule{transform:scaleX(.18)}.reveal-pending.is-visible.section-heading h2:after,.reveal-pending.is-visible .principle-marker i,.reveal-pending.is-visible .audience-rule{transform:scaleX(1)}.faq-answer{transform-origin:top}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.001ms!important;transition-delay:0ms!important;animation-duration:.001ms!important;animation-delay:0ms!important;animation-iteration-count:1!important}.reveal-pending,.reveal-pending.is-visible{opacity:1!important;transform:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
