:root{--ink:#173e35;--text:#243e36;--muted:#56665f;--paper:#f8faf7;--surface:#edf2ec;--line:#cbd5ca;--accent:#d1e4b3;--focus:#2a6955;--radius:4px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--text);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:4px}img{display:block;max-width:100%;height:auto}button{cursor:pointer}p{margin:0 0 1.2rem}h1,h2,h3{margin:0;color:var(--ink);font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(3rem,5.6vw,5.6rem);line-height:1.04}h2{font-size:clamp(2rem,3.2vw,3.4rem);line-height:1.16}h3{font-size:1.25rem;letter-spacing:-.025em;line-height:1.35}.container{width:min(1280px,calc(100% - 96px));margin-inline:auto}.narrow{max-width:850px}.section{padding-block:104px}.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:24px}.header{height:88px;border-bottom:1px solid rgba(203,213,202,.7);background:var(--paper);position:relative;z-index:10}.nav-bar{height:100%;display:flex;justify-content:space-between;align-items:center;gap:30px}.wordmark{display:flex;flex-direction:column;align-items:flex-start;flex-shrink:0;color:var(--ink)}.wordmark-main{font-size:29px;font-weight:600;line-height:1.1;letter-spacing:-.065em}.wordmark-sub{font-size:8px;letter-spacing:.28em;font-weight:700;line-height:1.9;padding-left:2px}#primary-nav{display:flex;align-items:center;gap:30px;font-size:.82rem;font-weight:600}#primary-nav>a{white-space:nowrap;padding:10px 0;position:relative}#primary-nav>a[aria-current=page]:not(.nav-contact)::after{position:absolute;content:"";height:2px;background:var(--ink);bottom:4px;left:0;right:0}.nav-contact{border:1px solid var(--ink);padding:12px 16px!important;border-radius:var(--radius);display:flex;gap:18px;align-items:center}.nav-contact:hover{background:var(--surface)}.menu-toggle{display:none}.skip-link{position:fixed;left:12px;top:-60px;background:var(--ink);color:var(--paper);padding:10px 18px;z-index:100}.skip-link:focus{top:10px}.hero{padding-block:54px 68px}.hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:36px;align-items:center}.hero-copy{padding:18px 0}.hero-copy h1{font-size:clamp(3.8rem,6.4vw,6.5rem);line-height:1.02;letter-spacing:-.065em}.hero-lead{font-size:1.06rem;line-height:1.75;max-width:410px;margin-top:28px;color:var(--muted)}.hero-art{overflow:hidden;border-radius:var(--radius);align-self:stretch;min-height:450px;background:#e8ebe5}.hero-art img{height:100%;width:100%;object-fit:cover;object-position:55% center}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:30px}.button{border:1px solid var(--ink);border-radius:var(--radius);background:var(--ink);color:var(--paper);display:inline-flex;align-items:center;justify-content:center;gap:26px;font-size:.84rem;font-weight:600;padding:15px 21px;line-height:1.4;white-space:nowrap;transition:background .16s,transform .16s}.button span{font-size:1.25rem;font-weight:400}.button:hover{background:#245647}.button:active{transform:translateY(1px)}.button-secondary{background:transparent;color:var(--ink)}.button-secondary:hover{background:var(--surface)}.intro{background:var(--surface)}.intro-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px}.intro-grid p{max-width:580px;color:var(--muted)}.intro-grid p:last-child{margin-bottom:0}.large-copy{font-size:1.3rem;line-height:1.65;color:var(--ink)!important;letter-spacing:-.02em}.section-heading{margin-bottom:48px;max-width:700px}.section-heading p{margin:20px 0 0;max-width:570px;color:var(--muted)}.service-row{display:grid;grid-template-columns:70px 1fr 45px;gap:24px;align-items:start;border-top:1px solid var(--line);padding:32px 0}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row h3{font-size:1.6rem;margin-bottom:12px}.service-row p{max-width:640px;margin:0;color:var(--muted)}.service-index{font-size:.75rem;color:var(--muted);padding-top:7px}.row-arrow{font-size:1.5rem;justify-self:end;transition:transform .2s}.service-row:hover .row-arrow{transform:translate(3px,-3px)}.service-row:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.approach-preview{background:#f0f4ef}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:54px 0 34px}.approach-item{border-top:2px solid var(--ink);padding-top:24px}.approach-item h3{font-size:1.18rem;margin-bottom:15px}.approach-item p{font-size:.9rem;color:var(--muted)}.text-link{border:0;background:none;padding:0 0 5px;display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid var(--ink);font-size:.87rem;font-weight:600;color:var(--ink);cursor:pointer}.text-link:hover{color:var(--focus)}.perspective{padding:120px 0}.perspective-inner{max-width:920px;text-align:center}.perspective h2{font-size:clamp(2.4rem,4vw,4.2rem)}.perspective p:not(.eyebrow){max-width:620px;margin:26px auto;color:var(--muted)}.contact-band{background:var(--accent)}.contact-band h2{max-width:800px}.contact-band p{margin:22px 0 28px;max-width:650px;color:var(--text)}.footer{padding-top:62px;background:var(--paper)}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px}.footer-grid p{font-size:.95rem;color:var(--muted)}.footer nav{display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-size:.83rem}.footer nav a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-block:24px;margin-top:48px;font-size:.7rem;color:var(--muted)}.page-hero{padding-top:80px;padding-bottom:72px}.page-lead{font-size:1.12rem;color:var(--muted);max-width:650px;margin:26px 0 0}.jump-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:42px;font-size:.8rem}.jump-links a{border-bottom:1px solid var(--line);padding-bottom:6px}.jump-links a:hover{border-color:var(--ink)}.service-detail{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;border-top:1px solid var(--line);padding:76px 0}.service-detail h2{font-size:2.25rem;margin-bottom:24px}.service-detail h3{font-size:1rem;margin-top:30px;margin-bottom:18px}.service-detail p:not(.large-copy){color:var(--muted)}.clean-list{padding:0;list-style:none;margin:0}.clean-list li{position:relative;padding-left:20px;margin:14px 0;color:var(--muted)}.clean-list li::before{content:'+';position:absolute;left:0;color:var(--ink)}.useful-question{background:var(--surface);padding:24px 28px;margin:30px 0;border-left:2px solid var(--ink)}.useful-question span{font-size:.73rem;color:var(--muted)}.useful-question p{margin:10px 0 0;color:var(--ink)!important;font-size:1rem}.formats{background:var(--surface)}.format-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:44px;margin-top:40px}.format-grid h3{margin-bottom:16px}.format-grid p{color:var(--muted);font-size:.92rem}.quiet{font-size:.8rem;color:var(--muted);margin-top:25px}.approach-long{padding-bottom:40px}.approach-long article{display:grid;grid-template-columns:100px 1fr;gap:45px;border-top:1px solid var(--line);padding:54px 0}.step-symbol{font-size:2.6rem;color:var(--ink)}.approach-long h2{font-size:2.4rem;margin-bottom:22px}.approach-long p{max-width:810px;color:var(--muted)}.expectations{background:var(--surface)}.expectation-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 80px;max-width:1000px;margin-top:45px}.expectation-grid h3{margin-bottom:14px}.expectation-grid p{color:var(--muted);max-width:430px}.about-story{padding-top:15px}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.story-grid img{aspect-ratio:1/1;object-fit:cover;border-radius:var(--radius)}.story-grid h2{margin-bottom:28px}.story-grid p{color:var(--muted)}.principles{background:var(--surface)}.principle-list{margin:42px 0 0}.principle-list>div{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:23px 0;border-bottom:1px solid var(--line)}.principle-list dt{font-size:1.25rem;color:var(--ink);letter-spacing:-.02em}.principle-list dd{margin:0;color:var(--muted)}.consultant-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.role{font-size:.9rem;color:var(--muted);margin:14px 0 30px}.consultant-grid p{max-width:600px}.consultant-grid .button{margin-top:10px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding-bottom:100px}.contact-person h2{font-size:2rem}.contact-person>p{color:var(--muted)}.contact-address{font-size:.84rem;overflow-wrap:anywhere}.contact-address a{text-decoration:underline;text-underline-offset:4px}.contact-note{border-top:1px solid var(--line);padding-top:28px;margin-top:30px}.contact-note h3{font-size:1rem;margin-bottom:16px}.contact-note p{font-size:.86rem;color:var(--muted)}.preview-notice{font-size:.79rem;line-height:1.65;border-left:2px solid var(--ink);padding-left:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:23px}.field label{display:block;font-size:.8rem;font-weight:600;margin-bottom:9px}.field input,.field select,.field textarea{display:block;width:100%;border:1px solid #7d8d80;border-radius:var(--radius);background:#fcfdfb;color:var(--ink);padding:13px 14px;font-size:.9rem;min-height:49px}.field select{padding-right:28px}.field textarea{resize:vertical;min-height:150px}.field-help,.form-privacy{font-size:.73rem;line-height:1.6;color:var(--muted);margin-top:9px}.form-privacy{margin-bottom:24px}.form-privacy a{text-decoration:underline}.inquiry-result{border:1px solid var(--line);padding:30px;border-radius:var(--radius);background:var(--surface);margin-top:25px}.inquiry-result h2{font-size:1.65rem}.inquiry-result>p{font-size:.86rem;margin-top:15px;color:var(--muted)}.inquiry-result pre{font:inherit;font-size:.85rem;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;padding:20px;background:var(--paper);border:1px solid var(--line);max-height:450px;overflow:auto}.inquiry-result .actions{gap:12px}.inquiry-result .button{padding:12px 15px;font-size:.79rem}.inquiry-result #edit-inquiry{margin-top:25px}.legal-content{padding-bottom:100px}.legal-content h2{font-size:1.5rem;margin:35px 0 18px}.legal-content p{color:var(--muted)}.legal-content a{text-decoration:underline}.toast{position:fixed;bottom:25px;right:25px;background:var(--ink);color:var(--paper);padding:12px 20px;border-radius:var(--radius);opacity:0;pointer-events:none}.toast.visible{opacity:1}[hidden]{display:none!important}
@media(min-width:1024px){.header{height:76px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}#primary-nav{gap:22px}.hero-art{min-height:400px}.intro-grid,.service-detail,.consultant-grid,.contact-layout,.story-grid{gap:50px}.hero-copy h1{font-size:clamp(3.3rem,6.5vw,5rem)}.approach-grid{gap:22px}}
@media(max-width:820px){.container{width:calc(100% - 40px)}.section{padding-block:68px}.header{height:74px}.menu-toggle{display:flex;gap:17px;align-items:center;background:none;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:9px 13px;font-size:.8rem}.menu-toggle span{font-size:1.2rem}#primary-nav{display:none;position:absolute;top:74px;left:0;right:0;padding:25px 20px;background:var(--paper);border-bottom:1px solid var(--line);align-items:stretch;gap:10px;flex-direction:column}#primary-nav.is-open{display:flex}#primary-nav>a{padding:10px}#primary-nav>a[aria-current=page]:not(.nav-contact)::after{display:none}.nav-contact{justify-content:space-between}.hero{padding-block:36px 45px}.hero-grid{grid-template-columns:1fr;gap:28px}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(3.5rem,10vw,5.6rem)}.hero-lead{max-width:520px;font-size:1rem;margin-top:22px}.hero-art{min-height:0;aspect-ratio:3/2}.hero-art img{object-fit:cover}.eyebrow{font-size:.65rem;margin-bottom:22px}.intro-grid,.service-detail,.story-grid,.consultant-grid,.contact-layout{grid-template-columns:1fr;gap:30px}.intro-grid h2 br{display:none}.intro-grid .large-copy{font-size:1.2rem}.service-row{grid-template-columns:38px 1fr 24px;gap:15px;padding:26px 0}.service-row h3{font-size:1.32rem}.service-row p{font-size:.9rem}.approach-grid{grid-template-columns:1fr 1fr;gap:25px}.perspective{padding:75px 0}.perspective h2 br{display:none}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>p{display:none}.footer-bottom{flex-direction:column;gap:6px;margin-top:32px}.page-hero{padding-top:48px;padding-bottom:50px}.page-hero h1{font-size:clamp(2.9rem,8vw,4.5rem)}.page-lead{font-size:1rem}.jump-links{gap:15px 22px;font-size:.75rem;margin-top:32px}.service-detail{padding:48px 0}.service-detail h2{font-size:2rem}.service-detail h3{margin-top:22px}.format-grid{grid-template-columns:1fr;gap:20px}.format-grid>div{max-width:520px}.approach-long article{grid-template-columns:42px 1fr;gap:20px;padding:38px 0}.step-symbol{font-size:1.8rem}.approach-long h2{font-size:1.8rem}.approach-long .large-copy{font-size:1.12rem}.expectation-grid{gap:24px}.story-grid img{aspect-ratio:3/2;max-height:380px;width:100%}.principle-list>div{grid-template-columns:1fr;gap:12px}.principle-list dt{font-size:1.12rem}.principle-list dd{font-size:.93rem}.contact-layout{padding-bottom:65px}.contact-note{display:none}.contact-person .role{margin-bottom:15px}.contact-person>p{margin-bottom:16px}.contact-address{font-size:.84rem}.preview-notice{max-width:550px}.inquiry-result{padding:22px}.inquiry-result pre{padding:15px}.section-heading{margin-bottom:33px}}
@media(max-width:480px){.container{width:calc(100% - 32px)}.hero-copy h1{font-size:3.65rem}.hero-lead{font-size:.94rem}.hero-art{aspect-ratio:1.4}.hero-grid{gap:30px}.actions{margin-top:24px}.button{padding:14px 18px;font-size:.8rem}.intro-grid h2{font-size:2rem}.service-index{display:none}.service-row{grid-template-columns:1fr 25px;gap:12px}.approach-grid{grid-template-columns:1fr;gap:12px}.approach-item{padding-top:19px}.approach-item p{margin-bottom:20px}.expectation-grid,.form-row{grid-template-columns:1fr;gap:0}.expectation-grid>div{margin-top:20px}.footer nav{font-size:.76rem}.footer-grid{gap:20px}.wordmark-main{font-size:27px}.page-hero h1{font-size:3rem}.page-hero h1 br{display:none}.approach-long article{grid-template-columns:1fr;gap:12px}.step-symbol{display:none}.large-copy{font-size:1.16rem}.service-detail{gap:22px}.contact-layout{gap:25px}.inquiry-result .actions{align-items:stretch;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
