@font-face{font-family:DM Sans;src:url('/assets/dm-sans-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:DM Sans;src:url('/assets/dm-sans-semibold.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Libre Caslon Display;src:url('/assets/libre-caslon-display.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--blue:#245b8b;--ink:#172a3c;--deep:#1c354b;--paper:#f4f7fa;--silver:#c7d2dd;--muted:#536373;--line:#d4dfe8;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',sans-serif;color-scheme:light;font-family:var(--sans);color:var(--ink);background:white;line-height:1.7;font-size:16px}*{box-sizing:border-box}body{margin:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05}h1{font-size:clamp(3.25rem,5.8vw,5.6rem);letter-spacing:-.03em}h2{font-size:clamp(2.6rem,4vw,3.7rem);letter-spacing:-.025em}h3{font-size:2rem;letter-spacing:-.01em}p{margin-bottom:1.15rem}p:last-child{margin-bottom:0}em{font-weight:400;color:var(--blue)}a{color:inherit;text-underline-offset:5px}img{max-width:100%;height:auto;display:block}button,input{font:inherit}.wrap{max-width:1280px;margin-inline:auto;width:calc(100% - 112px)}.narrow{max-width:810px}.section{padding-block:104px}.no-top{padding-top:0}.eyebrow{font:600 .75rem/1.6 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:var(--blue);margin-bottom:20px}.lead{font-size:1.18rem;color:var(--muted);max-width:670px;line-height:1.8}.large-text{font-size:1.4rem;line-height:1.6;color:var(--ink)}.caption{font-size:.8rem;line-height:1.7;color:var(--muted)}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 25px;background:var(--blue);border:1px solid var(--blue);color:white;text-decoration:none;font-size:.9rem;font-weight:600;line-height:1.5;text-align:center;transition:background .2s,color .2s}.button:hover{background:var(--ink);border-color:var(--ink)}.button.light{background:white;color:var(--ink);border-color:white}.button.light:hover{background:#dfebf4;border-color:#dfebf4}.button.secondary{background:transparent;color:var(--ink);border-color:#93a9bc}.button.secondary:hover{background:var(--ink);color:white}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid #92a8ba;padding:5px 0;font-size:.9rem;font-weight:600;line-height:1.5}.text-link:hover{color:var(--blue);border-color:currentColor}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #618fbb;outline-offset:6px}.skip-link{position:fixed;left:15px;top:-70px;background:white;padding:12px;z-index:99}.skip-link:focus{top:15px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.header{background:var(--ink);color:white}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:28px;min-height:106px}.brand img{width:150px;height:auto}.desktop-nav{display:flex;align-items:center;gap:28px}.desktop-nav>a:not(.button){text-decoration:none;font-size:.875rem;border-bottom:1px solid transparent;padding:8px 0}.desktop-nav>a[aria-current=page],.desktop-nav>a:hover{border-bottom-color:#b7d1e8}.nav-button{background:none;border-color:#8099b0;font-size:.8rem;padding:10px 20px;min-height:44px}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:1.12fr 1fr;background:var(--deep);color:white;min-height:665px;max-width:1800px;margin:auto}.hero-copy{padding:65px max(50px,calc((100vw - 1168px)/2)) 46px; padding-right:50px;align-self:center}.hero-copy .eyebrow{color:#b6d4ed;margin-bottom:26px}.hero h1{font-size:clamp(4.3rem,6.6vw,6.4rem);line-height:.99;letter-spacing:-.025em;margin-bottom:28px}.hero h1 em{color:#b6d4ed}.hero-copy>p:not(.eyebrow){max-width:420px;color:#d4dfe8;font-size:1rem;line-height:1.85}.hero .text-link{color:white}.hero-footnote{display:block;font-size:.75rem;letter-spacing:.05em;color:#adc1d1;margin-top:44px}.hero-photo{position:relative;min-height:665px;overflow:hidden}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center top}.photo-caption{position:absolute;bottom:28px;left:28px;background:#172a3ce8;padding:14px 22px;max-width:calc(100% - 56px)}.photo-caption strong{display:block;font-weight:400;font-size:1rem}.photo-caption span{font-size:.7rem;letter-spacing:.06em;color:#d6e2ea}.values-strip{background:#eaf0f5}.values-strip .wrap{display:flex;justify-content:space-between;padding-block:21px;gap:24px;color:#38546c;font-size:.73rem;letter-spacing:.12em;text-transform:uppercase}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:50px}.section-heading>p{max-width:400px;color:var(--muted);margin-bottom:6px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.service-card{border-top:1px solid #9cb3c7;padding-top:25px;display:flex;flex-direction:column;align-items:flex-start}.service-card .eyebrow{margin-bottom:25px}.service-card h3{margin-bottom:18px}.service-card h3 a{text-decoration:none}.service-card p:not(.eyebrow){font-size:1rem;color:var(--muted);margin-bottom:27px}.service-card .text-link{margin-top:auto}.purpose-section,.soft{background:var(--paper)}.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:85px}.purpose-grid>div:last-child>p:not(.large-text){color:var(--muted)}.quote-section{background:var(--ink);color:white;padding:88px 0}.quote-layout{max-width:1000px}.quote-section .eyebrow{color:#b6d4ed}.quote-section blockquote{margin:30px 0}.quote-section blockquote>p{font:400 clamp(2rem,3.6vw,3rem)/1.35 var(--serif)}blockquote footer{font:400 .9rem/1.8 var(--sans);margin-top:30px}blockquote footer strong,blockquote footer span{display:block}blockquote footer span{font-size:.8rem;color:var(--muted)}.quote-section footer span{color:#b9ccdb}.quote-section .text-link:hover{color:#b6d4ed}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.article-card{border-top:1px solid var(--line);padding-top:23px;position:relative;display:flex;flex-direction:column;align-items:flex-start}.article-card h3{font-size:2.3rem;line-height:1.13;margin:24px 0 18px;max-width:330px;min-height:78px}.article-card h3 a{text-decoration:none}.article-card>p:not(.eyebrow){color:var(--muted);margin-bottom:24px}.article-card .text-link{margin-top:auto}.article-card .eyebrow{max-width:75%;margin:0}.article-number{position:absolute;right:0;top:12px;color:#8198ac;font:2rem var(--serif)}.institute{padding:55px 60px;margin-bottom:96px;background:#eaf0f5;display:grid;grid-template-columns:1fr 1fr;gap:65px}.institute>div>p:not(.eyebrow){color:var(--muted)}.institute .caption{margin-top:15px}.consult{background:var(--blue);color:white}.consult-inner{padding-block:58px;display:flex;justify-content:space-between;align-items:center;gap:48px}.consult h2{font-size:3rem;margin-bottom:18px}.consult .eyebrow{color:#c4dced}.consult p:not(.eyebrow){max-width:610px;color:#e3edf5}.consult .button{flex-shrink:0}.footer{background:var(--ink);color:#d8e3eb;padding-top:62px}.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;padding-bottom:50px}.footer-brand img{width:156px;margin:-10px 0 25px}.footer-brand p{font:1.5rem/1.4 var(--serif);max-width:260px}.footer h2{font:600 .75rem var(--sans);text-transform:uppercase;letter-spacing:.12em;color:white;margin:20px 0 25px}.footer-top>div>a:not(:has(img)){display:block;margin:9px 0;font-size:.85rem;text-decoration:none}.footer a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #354b5f;display:flex;justify-content:space-between;gap:28px;padding-block:22px;font-size:.72rem;color:#b4c6d5}.footer-bottom p{margin:0}.footer-bottom a{text-decoration:none}
.page-intro{padding-block:85px 65px}.page-intro h1{max-width:950px;margin-bottom:27px}.page-intro .lead{max-width:670px}.about-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;padding-block:75px 60px;align-items:center}.about-hero h1{margin-bottom:25px}.about-hero p:not(.eyebrow){max-width:540px;color:var(--muted)}.about-hero .button{margin-top:15px}.about-hero figure img{width:100%;max-height:590px;object-fit:cover;object-position:center top}.about-hero figcaption{font-size:.75rem;color:var(--muted);margin-top:10px}.story{display:grid;grid-template-columns:1fr 1.65fr;gap:95px}.story-label>p:not(.eyebrow){font:2.35rem/1.2 var(--serif);max-width:280px}.story-label h2{font-size:2.7rem}.prose{color:var(--muted)}.prose h2{font-size:2.5rem;color:var(--ink);margin:44px 0 21px}.prose h2:first-child{margin-top:0}.prose p{line-height:1.9;margin-bottom:22px}.prose a:not(.button){color:var(--blue)}.prose .large-text{line-height:1.7}.two-column{display:grid;grid-template-columns:1fr 1.2fr;gap:85px}.two-column h2{margin-bottom:25px}.two-column>div>p:not(.eyebrow){color:var(--muted)}.session-note{background:var(--paper);padding:35px;margin-top:55px}.session-note h3{margin-bottom:16px}.session-note p{color:var(--muted)}.session-note .text-link{margin-left:20px}.service-scope{font-size:.8rem;margin-top:25px}.service-hero{display:grid;grid-template-columns:1.8fr 1fr;gap:70px;padding-block:80px 65px;align-items:center}.service-hero h1{font-size:clamp(3.2rem,5.5vw,5rem);margin-bottom:30px}.session-aside{background:var(--deep);color:white;padding:35px 40px;min-height:380px;display:flex;flex-direction:column;justify-content:center}.large-index{font:5rem/.9 var(--serif);color:#9cbfdc;margin-bottom:28px}.session-aside .eyebrow{color:#b6d4ed;margin-bottom:12px}.session-aside h2{font-size:2.25rem;margin-bottom:12px}.session-aside p{font-size:.875rem;color:#d8e3eb}.aside-rule{height:1px;background:#67819a;display:block;margin:15px 0 20px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-size:1rem;font-weight:600;list-style:none;padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:1.5rem;font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details>p{color:var(--muted);padding:0 30px 24px 0;font-size:.95rem}.booking-section{padding-bottom:95px}.consult-card{display:flex;justify-content:space-between;align-items:center;gap:45px;background:var(--deep);color:white;padding:46px 50px;margin-bottom:50px}.consult-card .eyebrow{color:#b6d4ed}.consult-card p:not(.eyebrow){max-width:630px;color:#d4dfe8}.consult-card h2{font-size:3rem;margin-bottom:18px}.consult-card .button{flex-shrink:0}.booking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.booking-card{padding:30px;border:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.booking-card h2{font-size:2.25rem;margin-bottom:20px}.booking-card>p:not(.eyebrow){color:var(--muted);margin-bottom:25px}.booking-card .button{margin-top:auto;font-size:.84rem;padding:12px 17px}.booking-card .text-link{margin-top:17px}.booking-bottom{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:58px}.booking-bottom h3{margin-bottom:15px}.booking-bottom p{color:var(--muted)}.archive-note{margin-top:35px}.article-header{max-width:1050px;padding-block:65px 50px}.article-header>.text-link{margin-bottom:45px}.article-header h1{font-size:clamp(3.2rem,5.8vw,5.4rem);max-width:880px;margin-bottom:25px}.byline{display:flex;align-items:center;gap:15px;margin-top:30px;font-size:.85rem}.byline img{width:48px;height:48px;border-radius:50%;object-fit:cover;object-position:center 10%}.byline span{display:block;color:var(--muted);font-size:.75rem}.article-body{max-width:720px;margin:0 auto 90px;padding-top:35px;border-top:1px solid var(--line)}.article-signoff{margin-top:45px!important}.article-signoff span{font:2.4rem var(--serif);color:var(--blue)}.testimonial-list{max-width:900px;padding-bottom:90px}.testimonial-list article{position:relative;border-top:1px solid var(--line);padding:50px 0 35px 58px}.testimonial-list blockquote{margin:0}.testimonial-list blockquote>p{font:2.35rem/1.4 var(--serif);margin:0}.quote-mark{font:5rem var(--serif);position:absolute;top:28px;left:0;color:var(--blue)}.testimonial-list .caption{margin-top:20px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:100px}.contact-feature{background:var(--deep);color:white;padding:50px}.contact-feature h2{margin-bottom:25px}.contact-feature .eyebrow{color:#b6d4ed}.contact-feature p:not(.eyebrow){color:#d4dfe8}.contact-feature .button{margin-top:12px}.contact-details{padding:28px 0}.contact-details h2{margin-bottom:24px}.contact-details h3{margin:35px 0 15px}.contact-details p{color:var(--muted)}.contact-email{font-size:1.15rem;color:var(--blue);overflow-wrap:anywhere}.payment-card{background:var(--paper);padding:45px;margin-bottom:60px}.payment-card h2{margin-bottom:25px}.payment-card p{color:var(--muted)}.payment-card .caption{margin-top:20px}.error-actions{padding-bottom:90px}
@media(min-width:1500px){.hero-copy{padding-left:max(70px,calc((1800px - 1280px)/2))}}@media(max-width:1120px){.wrap{width:calc(100% - 72px)}.desktop-nav{gap:18px}.desktop-nav>a:not(.button){font-size:.8rem}.hero-copy{padding:55px 40px}.hero h1{font-size:5rem}.hero-photo,.hero{min-height:650px}.purpose-grid{gap:60px}.story{gap:65px}.service-hero{gap:45px}.session-aside{padding:30px}.about-hero{gap:50px}.contact-grid{gap:45px}}@media(max-width:900px){.desktop-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu>summary{cursor:pointer;list-style:none;border:1px solid #71899f;padding:8px 17px;display:flex;gap:22px;align-items:center}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:55px;width:260px;z-index:20;background:var(--ink);padding:18px 24px;box-shadow:0 12px 20px #0002}.mobile-menu nav>a{display:block;padding:11px 0;text-decoration:none}.mobile-menu nav>.button{padding:12px;margin-top:10px;background:#eaf0f5;color:var(--ink)}.hero h1{font-size:4.2rem}.hero-copy{padding-inline:36px}.hero-photo,.hero{min-height:620px}.hero .actions{gap:18px}.hero-copy .eyebrow{font-size:.66rem;letter-spacing:.12em}.values-strip .wrap{font-size:.65rem;gap:15px}.service-grid,.article-grid{gap:25px}.section-heading{gap:40px}.service-card h3{font-size:1.8rem}.article-card h3{font-size:1.9rem}.purpose-grid,.two-column{gap:40px}.institute{padding:40px;gap:35px}.consult-inner{align-items:flex-start;flex-direction:column;gap:28px}.story{gap:40px;grid-template-columns:1fr 1.8fr}.service-hero{grid-template-columns:1fr 300px;gap:30px}.service-hero h1{font-size:3.6rem}.booking-grid{gap:18px}.booking-card{padding:22px}.booking-card .button{width:100%}.consult-card{align-items:flex-start;flex-direction:column;gap:25px}.footer-top{grid-template-columns:1.4fr 1fr 1fr}.footer-top>div:last-child{grid-column:2/4}.contact-feature{padding:35px}.contact-grid{gap:30px}}
@media(max-width:650px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:87px}.brand img{width:128px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 28px 36px}.hero h1{font-size:4.4rem;line-height:1.02}.hero-copy .eyebrow{font-size:.7rem}.hero-copy>p:not(.eyebrow){max-width:420px}.hero-footnote{margin-top:30px}.hero-photo{min-height:480px}.hero-photo>img{object-position:center top}.photo-caption{bottom:20px;left:20px;padding:12px 18px}.values-strip .wrap{display:block;padding-block:15px;font-size:.67rem;text-align:center}.values-strip span{display:block;margin:7px 0}.section{padding-block:65px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:22px}.section-heading>.text-link{margin-top:20px}h2{font-size:2.7rem}.service-grid,.article-grid{grid-template-columns:1fr;gap:37px}.service-card h3{font-size:2.4rem}.service-card p:not(.eyebrow){margin-bottom:18px}.service-card .eyebrow{margin-bottom:18px}.purpose-grid{grid-template-columns:1fr;gap:30px;padding-block:60px}.purpose-grid h2 br{display:none}.quote-section{padding-block:62px}.quote-section blockquote>p{font-size:2.15rem}.article-card h3{font-size:2.4rem;min-height:0;margin:24px 0 18px;max-width:none}.article-card .eyebrow{font-size:.7rem}.institute{grid-template-columns:1fr;gap:24px;padding:32px 26px;margin-bottom:65px}.consult h2{font-size:2.65rem}.consult-inner{padding-block:46px}.footer-top{grid-template-columns:1fr 1fr;gap:22px;padding-bottom:35px}.footer-brand{grid-column:1/-1}.footer-top>div:last-child{grid-column:1/-1}.footer-top>div:last-child a{display:inline-block!important;margin-right:20px!important}.footer-bottom{flex-direction:column;gap:10px}.page-intro{padding-block:50px 40px}.page-intro h1{font-size:3.3rem}.lead{font-size:1.05rem}.no-top{padding-top:0}.about-hero{grid-template-columns:1fr;gap:40px;padding-block:45px}.about-hero h1{font-size:4rem}.about-hero figure img{max-height:520px}.story{grid-template-columns:1fr;gap:34px}.story-label>p:not(.eyebrow){max-width:none;font-size:2rem}.prose h2{font-size:2.3rem;margin-top:35px}.two-column{grid-template-columns:1fr;gap:30px}.service-hero{grid-template-columns:1fr;padding-block:45px;gap:40px}.service-hero h1{font-size:3.4rem}.session-aside{min-height:0;padding:30px}.large-index{display:none}.session-aside h2{font-size:2.2rem}.session-aside .aside-rule{margin:8px 0 16px}.session-note{padding:28px 24px;margin-top:35px}.session-note .text-link{margin:18px 0 0;display:table}.booking-grid{grid-template-columns:1fr;gap:25px}.booking-card{padding:30px}.booking-card h2{font-size:2.5rem}.booking-card .button{width:auto}.booking-bottom{grid-template-columns:1fr;gap:34px;margin-top:40px}.consult-card{padding:32px 26px;margin-bottom:35px}.consult-card h2{font-size:2.7rem}.booking-section{padding-bottom:65px}.article-header{padding-block:40px 35px}.article-header>.text-link{margin-bottom:32px}.article-header h1{font-size:3.5rem}.article-body{width:calc(100% - 40px);margin-bottom:60px}.byline span{font-size:.7rem}.testimonial-list article{padding:38px 0 30px 30px}.testimonial-list blockquote>p{font-size:2rem}.quote-mark{font-size:3.5rem;top:20px}.contact-grid{grid-template-columns:1fr;padding-bottom:60px;gap:30px}.contact-feature{padding:32px 26px}.contact-details{padding:10px 0}.payment-card{padding:30px 25px;margin-bottom:40px}.button{font-size:.86rem}.mobile-menu nav{right:0;width:min(280px,calc(100vw - 40px))}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}@media print{.header,.footer,.consult,.button,.mobile-menu{display:none}body{color:black;background:white}.wrap{width:100%}.hero,.purpose-grid,.story,.service-hero{display:block;background:white;color:black}.hero-photo,.session-aside{display:none}.hero-copy{padding:0}.hero-copy p,.hero em{color:black!important}.section{padding:25px 0}a{color:inherit}}

/* Keep the office portrait and its caption clear at every size. */
.hero-photo>img{object-position:center center}
.byline img{object-position:center 45%}
@media(max-width:650px){.hero-photo{min-height:0}.hero-photo>img{position:static;height:auto;object-fit:contain}.hero-photo .photo-caption{position:static;max-width:none;padding:18px 28px;background:var(--ink)}.about-hero figure img{max-height:none}}
/* Content studio and accessible service navigation, October 2026. */
.eyebrow,.hero-copy .eyebrow{font-size:.82rem;line-height:1.6;letter-spacing:.1em}.photo-caption span{display:block;max-width:370px;font-size:.75rem;line-height:1.6}.article-card .eyebrow{max-width:none}.review-photo{width:80px;height:80px;border-radius:50%;object-fit:cover;display:block;margin:0 0 16px}.social-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:20px}.social-links a{display:inline-flex!important;gap:8px;align-items:center;color:var(--blue);text-decoration:none}.social-links svg{width:22px;height:22px}.footer .social-links a{color:#bdd5e9}.article-filters{display:flex;flex-wrap:wrap;gap:18px;align-items:end;margin-bottom:40px}.article-filters label{flex:1;min-width:160px}label{display:block;font-size:.94rem;line-height:1.6;margin-bottom:16px}input,textarea,select{display:block;width:100%;padding:12px 14px;margin-top:6px;font:inherit;color:var(--ink);background:white;border:1px solid #91a7b9;border-radius:3px}textarea{resize:vertical}button{font:inherit;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:2px;padding:12px 20px;cursor:pointer;min-height:44px}button:disabled{opacity:.6;cursor:wait}.check{display:flex;gap:10px;align-items:start}.check input{width:20px;height:20px;flex-shrink:0}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.studio{padding-block:50px 90px}.studio h1{font-size:3.5rem}.studio section{scroll-margin-top:30px;border-top:1px solid var(--line);padding-top:35px;margin-top:45px}.studio-tabs{display:flex;flex-wrap:wrap;gap:25px;margin:30px 0}.studio-grid{display:grid;grid-template-columns:230px 1fr;gap:45px}.studio aside ul{padding:0;list-style:none}.studio aside li{margin:20px 0}.studio aside button{background:var(--paper);color:var(--ink);width:100%;text-align:left}.studio small{display:block;color:var(--muted);margin-top:5px}.studio form{max-width:800px}.studio textarea{font-size:1rem}.studio .actions{flex-wrap:wrap;gap:12px}.studio-status,.error{color:#913a2e}#studio-status{position:sticky;top:0;background:var(--paper);padding:15px;z-index:10}#studio-status:empty{display:none}.prose img{max-width:100%;height:auto}.qhht-logo{max-width:220px;height:auto;margin:35px 0}.video-grid{display:grid;gap:20px}.video-card{padding:24px;background:var(--paper)}.video-card a{display:block;margin-top:12px}.video-card iframe{width:100%;aspect-ratio:16/9;border:0}.hero-photo video{width:100%;height:100%;object-fit:cover;object-position:75% center;position:absolute}.studio a,.article-filters a{color:var(--blue)}:focus-visible{outline:3px solid #3a87bb;outline-offset:4px}@media(max-width:750px){.studio-grid{grid-template-columns:1fr}.studio h1{font-size:2.8rem}.article-filters{display:block}.hero-photo video{position:static;height:430px}.studio .actions{display:grid;grid-template-columns:1fr 1fr}}
[hidden]{display:none!important}

/* Decorative hero film blends into the copy; Matthew's identity belongs with his portrait. */
.hero{background:var(--deep)}
.hero-photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--deep) 0%,rgba(28,53,75,.86) 8%,rgba(28,53,75,.3) 28%,transparent 52%)}
.meet-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);align-items:center;gap:clamp(40px,7vw,100px);padding-block:90px}
.meet-portrait{position:relative;margin:0;max-width:480px;width:100%}
.meet-portrait>img{display:block;width:100%;height:auto}
.meet-portrait .photo-caption{color:white;left:18px;right:18px;bottom:18px;max-width:none;padding:16px 20px}
.meet-copy h2{font-size:clamp(2.9rem,4.5vw,4.5rem);margin-bottom:28px}
.meet-copy h2 em{color:var(--blue)}
.meet-copy>p:not(.eyebrow):not(.large-text){color:var(--muted)}
.meet-copy .button{margin-top:12px}
@media(max-width:750px){.hero{grid-template-columns:1fr}.hero-photo{min-height:0}.hero-photo video{display:block}.hero-photo::after{background:linear-gradient(180deg,var(--deep) 0%,rgba(28,53,75,.65) 12%,transparent 48%)}.meet-grid{grid-template-columns:1fr;gap:36px;padding-block:60px}.meet-portrait{max-width:480px;margin-inline:auto}.meet-copy{max-width:560px}.meet-portrait .photo-caption{left:12px;right:12px;bottom:12px;padding:12px 15px}.meet-portrait .photo-caption span{font-size:.7rem;letter-spacing:.025em}}

/* Shared face crop keeps Heather centered in both testimonial placements. */
.review-photo-heather{position:relative;overflow:hidden;flex-shrink:0}
.review-photo-heather>img{position:absolute;width:140%;max-width:none;height:auto;left:-35%;top:-5%}
.nav-explore{position:relative;font-size:.875rem}
.nav-explore>summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:9px;border-bottom:1px solid transparent}
.nav-explore>summary::-webkit-details-marker{display:none}
.nav-explore>summary:hover,.nav-explore>summary.is-current{border-bottom-color:#b7d1e8}
.nav-explore-links{position:absolute;top:100%;left:-18px;min-width:190px;padding:12px 18px;background:var(--ink);box-shadow:0 12px 20px #0002;z-index:25}
.nav-explore-links>a{display:block;min-height:44px;padding:10px 0;text-decoration:none}
.nav-explore-links>a:hover,.nav-explore-links>a[aria-current]{text-decoration:underline}
.newsletter-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:start}
.newsletter-copy h2{margin-bottom:25px}.newsletter-copy p{color:var(--muted)}
.newsletter-signup{background:var(--paper);padding:40px}.newsletter-signup h2{font-size:2.8rem;margin-bottom:24px}.newsletter-signup .caption{margin-top:20px}
.institute h3{margin:28px 0 16px}
@media(max-width:900px){.nav-explore-links{position:static;box-shadow:none;padding:0 0 5px 18px;min-width:0}.nav-explore{font-size:inherit}.nav-explore>summary{padding:11px 0}.newsletter-layout{gap:35px}}
@media(max-width:650px){.newsletter-layout{grid-template-columns:1fr}.newsletter-signup{padding:28px 24px}.newsletter-signup h2{font-size:2.5rem}}

/* Thumbnail previews preserve the source site's three QHHT video placements. */
.qhht-resources .video-card{padding:20px}
.qhht-resources .video-card h3{font:600 1.05rem/1.5 var(--sans);margin:0 0 14px;color:var(--ink)}
.load-video{display:block;position:relative;width:100%;aspect-ratio:16/9;padding:0;min-height:0;border:0;overflow:hidden;background:#111}
.prose .load-video>img{width:100%;height:100%;object-fit:cover}
.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:68px;height:48px;border-radius:12px;background:#c00;color:#fff;box-shadow:0 2px 14px #0005;pointer-events:none}
.video-play svg{width:30px;height:30px}.load-video:hover .video-play,.load-video:focus-visible .video-play{background:#a00}
.video-card iframe{display:block;background:#111}
@media(max-width:650px){.qhht-resources .video-card{padding:14px}}

/* Original service artwork, with consistent space and natural proportions. */
.service-logo-slot{height:112px;width:144px;display:flex;align-items:center;justify-content:flex-start;margin-bottom:24px;flex-shrink:0}
.service-logo{display:block;width:112px;height:112px;object-fit:contain}
.service-logo-qhht{width:126px;height:auto;max-height:112px}
.service-logo-feature{height:144px;width:165px;margin-bottom:25px}
.service-logo-feature .service-logo{width:144px;height:144px}
.service-logo-feature .service-logo-qhht{width:163px;height:auto;max-height:144px}
@media(max-width:650px){.service-logo-slot{margin-bottom:18px}.service-logo-feature{height:120px;margin-bottom:22px}.service-logo-feature .service-logo{width:120px;height:120px}.service-logo-feature .service-logo-qhht{width:136px;height:auto;max-height:120px}}
/* Compact QHHT previews share one row on desktop. */
@media(min-width:1000px){
 .qhht-resources .video-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
 .qhht-resources .video-card{min-width:0;padding:12px;display:grid;grid-template-rows:subgrid;grid-row:span 3;gap:12px}
 .qhht-resources .video-card h3{font-size:.95rem;line-height:1.45;margin:0}
 .qhht-resources .video-card a{font-size:.8rem;margin:0}
 .qhht-resources .video-play{width:52px;height:38px;border-radius:9px}
 .qhht-resources .video-play svg{width:25px;height:25px}
}
/* Separate session planning from the QHHT video introduction. */
.session-note + .qhht-resources{margin-top:56px}
@media(max-width:650px){.session-note + .qhht-resources{margin-top:40px}}

.nav-sessions .nav-explore-links{width:300px;max-width:calc(100vw - 40px)}
@media(max-width:900px){.nav-sessions .nav-explore-links{width:auto;max-width:none}}

/* Preserve paragraph breaks in original client testimonials. */
.testimonial-list blockquote > p{white-space:pre-line}

.review-website{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:4px;color:var(--blue);font-size:.9rem;text-underline-offset:4px}.review-website span{display:inline!important;color:inherit!important}

/* Prominent client profiles beside their words; stack naturally on phones. */
.testimonial-list{max-width:1120px}
.testimonial-list .has-review-photo{padding-left:0}
.has-review-photo .quote-mark{display:none}
.has-review-photo blockquote,.quote-section blockquote{display:grid;grid-template-columns:190px minmax(0,1fr);column-gap:48px;align-items:start}
.has-review-photo blockquote>p,.quote-section blockquote>p{grid-column:2;grid-row:1}
.has-review-photo blockquote>p{font-size:clamp(1.5rem,2.6vw,2rem)}
.has-review-photo blockquote>footer,.quote-section blockquote>footer{grid-column:1;grid-row:1;margin-top:0}
.has-review-photo .review-photo,.quote-section .review-photo{width:160px;height:160px;margin-bottom:20px}
.has-review-photo .caption{margin-left:238px}
.quote-section .review-website{color:#c6e4ff}
@media(max-width:750px){
 .has-review-photo blockquote,.quote-section blockquote{grid-template-columns:minmax(0,1fr);row-gap:26px}
 .has-review-photo blockquote>footer,.quote-section blockquote>footer{grid-column:1;grid-row:1}
 .has-review-photo blockquote>p,.quote-section blockquote>p{grid-column:1;grid-row:2}
 .has-review-photo .review-photo,.quote-section .review-photo{width:128px;height:128px;margin-bottom:16px}
 .has-review-photo .caption{margin-left:0}
}

.service-full-name{display:block;margin-bottom:8px;font-weight:600;color:var(--ink);line-height:1.5}

.payment-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.payment-method-grid .payment-card{margin:0;padding:34px;text-align:left}
.payment-method-grid .payment-card h2{font-size:2.2rem;line-height:1.2}
.payment-method-grid .actions{flex-wrap:wrap;gap:12px}
.payment-method-grid .caption{margin:20px 0 0}
.payment-followup{margin-top:44px}
@media(max-width:750px){.payment-method-grid{grid-template-columns:1fr}.payment-method-grid .payment-card{padding:28px 24px}}

.business-phone{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-underline-offset:4px}.contact-phone{margin-bottom:30px}.contact-phone h3{margin-top:0}.contact-phone .business-phone{color:var(--blue);font-size:1.2rem}.footer-phone{margin-top:20px}.footer-phone p{font-size:.8rem;line-height:1.65;margin-top:6px;max-width:320px}

/* Compact footer: keep contact details readable without extending the brand column. */
.footer{padding-top:42px}
.footer-top{grid-template-columns:minmax(250px,1.6fr) repeat(4,minmax(0,1fr));gap:28px;padding-bottom:32px}
.footer-brand img{margin-bottom:16px}
.footer-brand .footer-tagline{font:1.125rem/1.45 var(--serif);max-width:300px;margin-bottom:12px}
.footer-phone{margin-top:8px}
.footer-phone .business-phone{font-size:.9rem}
.footer-phone p{font:.78rem/1.55 var(--sans);max-width:255px;margin:2px 0 0;color:#b4c6d5}
.footer h2{margin:12px 0 20px}
.footer-bottom{align-items:center;flex-wrap:wrap;padding-block:14px}
.footer-bottom .social-links{margin:0 0 0 auto;gap:16px}
.footer-bottom .social-links a{font-size:.8rem;min-height:44px}
.footer-bottom .social-links svg{width:18px;height:18px}
@media(max-width:1120px){.footer-top{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.footer-brand{grid-column:1/-1}.footer-top>div:last-child{grid-column:auto}}
@media(max-width:650px){.footer{padding-top:34px}.footer-brand .footer-tagline{max-width:none}.footer-phone p{max-width:300px}.footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;padding-bottom:28px}.footer .footer-top>div:last-child a{display:block!important;margin:9px 0!important}.footer-bottom{align-items:flex-start}.footer-bottom .social-links{margin:0}}

.mmu-admin>summary{border:1px solid #8aa9c3;border-radius:999px;padding:10px 17px;white-space:nowrap;font-size:.82rem}
.mmu-admin>summary:hover{border-color:#c6e4ff;background:#ffffff0a}
.mmu-admin .nav-explore-links{left:auto;right:0;min-width:200px}
.admin-signout{background:none;border:0;border-top:1px solid #ffffff30;color:inherit;width:100%;text-align:left;padding:12px 0;font-size:.85rem}
.sign-in-panel{padding:32px;background:var(--paper);margin-bottom:50px}
.footer-sign-in{display:inline-flex;align-items:center;min-height:44px;font-size:.8rem}
@media(min-width:901px){.header-inner:has(.mmu-admin) .desktop-nav{gap:16px}.header-inner:has(.mmu-admin){gap:18px}}
@media(max-width:1200px){.header-inner:has(.mmu-admin) .desktop-nav{display:none}.header-inner:has(.mmu-admin) .mobile-menu{display:block;position:relative}}
@media(max-width:900px){.mmu-admin>summary{padding:10px 16px}.mmu-admin .nav-explore-links{min-width:0}}
@media(min-width:901px) and (max-width:1200px){
 .header-inner:has(.mmu-admin) .mobile-menu>summary{cursor:pointer;list-style:none;border:1px solid #71899f;padding:8px 17px;display:flex;gap:22px;align-items:center}
 .header-inner:has(.mmu-admin) .mobile-menu>summary::-webkit-details-marker{display:none}
 .header-inner:has(.mmu-admin) .mobile-menu nav{position:absolute;right:0;top:55px;width:280px;z-index:20;background:var(--ink);padding:18px 24px;box-shadow:0 12px 20px #0002}
 .header-inner:has(.mmu-admin) .mobile-menu nav>a{display:block;padding:11px 0;text-decoration:none}
 .header-inner:has(.mmu-admin) .mobile-menu nav>.button{padding:12px;margin-top:10px;background:#eaf0f5;color:var(--ink)}
 .header-inner:has(.mmu-admin) .nav-explore-links{position:static;box-shadow:none;padding:0 0 5px 18px;width:auto;min-width:0}
 .header-inner:has(.mmu-admin) .nav-explore>summary{padding:11px 0}
 .header-inner:has(.mmu-admin) .mmu-admin>summary{padding:10px 16px}
}

.article-empty-state{padding:clamp(1.5rem,4vw,3rem);background:var(--soft,#f4f7f9);border:1px solid #dce4ea;max-width:50rem;margin-inline:auto;text-align:center}.article-empty-state h2{margin-top:0}.article-empty-state p{margin-bottom:0}
