/* Three different closing chapters: process, answers, and a conversation. */
#about .section-heading{align-items:end;margin-bottom:44px}
#about .approach-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
#about .approach-item{border:1px solid #d1d2c8;background:#e9eae2;transition:background .3s,border-color .3s}
#about .approach-item:nth-child(2){background:#f9f9f4}
#about .approach-item:nth-child(3){background:#f1f0e9;border-color:#d1d2c8}
#about .approach-item summary{display:grid;grid-template-columns:1fr 32px;gap:0;padding:24px;align-items:center}
#about .approach-number{grid-column:1/-1;color:#404d33;font-size:12px;display:flex;justify-content:space-between;align-items:center}
#about .approach-number>span{color:#71776a;font-size:10px;letter-spacing:1.4px}
#about .process-art{grid-column:1/-1;display:block;width:100%;height:152px;padding:14px 0 10px;overflow:hidden}
.process-art svg{width:100%;height:100%;stroke:#22281b;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.process-art .art-primary{fill:#f6f7f0;transition:transform .5s cubic-bezier(.22,1,.36,1)}
.process-art .art-secondary{fill:var(--accent);transition:transform .5s cubic-bezier(.22,1,.36,1)}
#about .approach-item h3{font-size:clamp(22px,2vw,29px);line-height:1.45;margin:10px 0 0}
#about .approach-item .heading-line{display:block}
#about .approach-toggle{width:30px;height:30px;align-self:end;margin-bottom:4px;background:transparent;border-color:#9ca78f}
#about .approach-body{padding:0 24px 24px;max-width:none}
#about .approach-body p{font-size:15px;line-height:1.85}
#about .approach-body br{display:none}
#about .approach-note{font-size:12px;color:#646b5a;border-top:1px solid #b7c2ac;padding-top:16px}
#about .approach-item[open]{background:#f9f9f4;border-color:#aeb6a5}
#about .approach-item[open] .art-primary{transform:translate(-5px,-2px)}
#about .approach-item[open] .art-secondary{transform:translate(6px,1px)}
html.approach-motion .approach-transition::after{height:80px}
.landing #before-start{background:#20241d;color:#f2f1ed;position:relative;gap:clamp(40px,8vw,130px);padding-top:88px;padding-bottom:88px}
.before-intro{position:relative}
.before-intro>.eyebrow{color:#b6c0ac;font-size:11px;letter-spacing:1.6px}
.faq-mark{display:inline-block;font:400 100px/.95 var(--font);letter-spacing:-.08em;color:var(--accent);margin-top:32px;position:relative;padding-right:35px}
.faq-mark>span{position:absolute;right:0;top:0;font:32px var(--font);color:#96a38a}
#before-start .before-intro h2{margin:26px 0 22px;font-size:clamp(30px,3vw,44px);line-height:1.4}
#before-start .before-intro h2>span{color:#b3bbaa}
#before-start .before-intro>p:not(.eyebrow){color:#bdc5b5;font-size:15px}
#before-start .text-link{border-color:#728064;color:#f2f1ed;font-size:14px}
#before-start .text-link>span{color:var(--accent)}
#before-start .before-questions{border-color:#5a6650;align-self:center}
#before-start .before-questions details{border-color:#46503e;transition:background .25s}
#before-start .before-questions summary{font-size:17px;min-height:90px;padding:24px 8px}
#before-start .before-questions summary>span{color:#9ab982}
#before-start .before-questions summary i::before,#before-start .before-questions summary i::after{background:var(--accent)}
#before-start .answer{padding-left:50px;padding-right:18px}
#before-start .answer p{color:#bdc5b5;font-size:15px;line-height:1.85}
#before-start .answer strong{color:#f2f1ed}
#before-start details[open]{background:#ffffff04}
.landing #contact{position:relative;isolation:isolate;background:#edf2e7;padding-top:90px;padding-bottom:80px;overflow:hidden}
#contact .contact-top{position:relative;z-index:2}
#contact .contact-top>.eyebrow{color:#59644e}
#contact h2{position:relative;z-index:2;font-size:clamp(36px,4.8vw,70px);max-width:75%;margin-top:50px}
#contact h2 .tone-soft{color:#78826f}
#contact .contact-desc{position:relative;z-index:2;max-width:34em}
.contact-orbit{position:absolute;right:6%;top:118px;width:240px;height:240px;z-index:0;transform:rotate(calc(var(--closing-progress,0)*45deg));pointer-events:none}
.orbit-ring{position:absolute;inset:0;border:1px solid #becfac;border-radius:50%}
.orbit-ring::before{content:"";position:absolute;width:12px;height:12px;left:27px;top:27px;background:#3d6026;border:3px solid #edf2e7;border-radius:50%}
.orbit-star{position:absolute;inset:15px;display:grid;place-items:center;font:300 290px/1 var(--font);color:var(--accent);padding-top:55px}
.orbit-label{position:absolute;bottom:-22px;left:50%;transform:translateX(-50%);white-space:nowrap;font:10px var(--mono);letter-spacing:1.5px;color:#78826f}
#contact .contact-links{position:relative;z-index:2;margin-top:68px;border-top:1px solid #b8c6ac}
#contact .contact-links>a{border-color:#b8c6ac;padding:28px 0;transition:background .25s,padding .25s}
#contact .contact-links>a>span:last-child{display:grid;place-items:center;width:38px;height:38px;font-size:23px;border-radius:50%;border:1px solid #b8c6ac;transition:transform .3s,background .3s}
#contact .contact-links>a{grid-template-columns:1fr 2fr 40px}
body>footer{background:#20241d;color:#f2f1ed;border:0;padding-top:38px}
.footer-note{display:flex;justify-content:space-between;gap:24px;align-items:center;color:#aab4a0;font:10px/1.6 var(--mono);letter-spacing:.8px;margin-bottom:48px}
.footer-note>span:last-child{font:14px var(--font);letter-spacing:-.02em}
body>footer .footer-brand{font-size:clamp(65px,15.5vw,230px);line-height:1;letter-spacing:-.075em}
body>footer .footer-brand span{display:inline-block;transform:rotate(calc(var(--closing-progress,0)*35deg));transform-origin:50% 40%}
body>footer .footer-bottom{border-color:#46503e;color:#9da893;margin-top:44px}
body>footer .footer-bottom a{color:#f2f1ed}
@media(hover:hover){#about .approach-item:hover{border-color:#a6b296}#about .approach-item:hover .art-primary{transform:translate(-4px,-3px)}#about .approach-item:hover .art-secondary{transform:translate(5px,0)}#contact .contact-links>a:hover{background:#e2eed8;padding-left:14px;padding-right:14px}#contact .contact-links>a:hover>span:last-child{background:var(--accent);transform:rotate(45deg)}}
@media(max-width:1000px){#about .approach-grid{gap:12px}#about .approach-item summary{padding:20px}#about .approach-item h3{font-size:23px}#about .approach-body{padding:0 20px 20px}.contact-orbit{width:190px;height:190px;right:5%;top:150px}.orbit-star{font-size:225px;padding-top:40px}}
@media(max-width:800px){#about .approach-grid{grid-template-columns:1fr;gap:12px}#about .approach-item summary{grid-template-columns:1fr 102px 30px;gap:12px;padding:22px}#about .approach-number{grid-column:1;grid-row:1;justify-content:start;gap:18px}#about .process-art{grid-column:2;grid-row:1/3;height:100px;padding:0;width:102px}#about .approach-item h3{grid-column:1;grid-row:2;font-size:25px;margin:0}#about .approach-toggle{grid-column:3;grid-row:1/3;align-self:center;margin:0}#about .approach-body{padding:0 22px 22px;max-width:40em}.landing #before-start{grid-template-columns:1fr;padding-top:64px;padding-bottom:64px;gap:36px}.faq-mark{position:absolute;right:8px;top:38px;margin:0;font-size:75px;padding-right:25px}.faq-mark>span{font-size:24px}#before-start .before-intro h2{padding-right:80px}#before-start .before-intro>p:not(.eyebrow){max-width:30em}.contact-orbit{width:160px;height:160px;top:90px;right:3%;opacity:.7}.orbit-star{font-size:185px;padding-top:35px}.orbit-label{display:none}#contact h2{max-width:100%;padding-right:65px}#contact .contact-links>a{grid-template-columns:100px 1fr 38px}}
@media(max-width:600px){#about .section-heading{margin-bottom:32px}#about .approach-item summary{grid-template-columns:1fr 75px 26px;gap:10px;padding:20px 18px}#about .approach-number{font-size:11px;gap:12px}#about .approach-number>span{font-size:9px}#about .approach-item h3{font-size:22px}#about .process-art{width:75px;height:82px}#about .approach-toggle{width:26px;height:26px}#about .approach-body{padding:0 18px 22px}#about .approach-body p{font-size:14px}html.approach-motion .approach-transition::after{height:36px}#before-start .before-intro h2{font-size:30px}#before-start .before-questions summary{font-size:16px;padding:22px 0;min-height:80px}#before-start .answer{padding-left:32px;padding-right:0}#before-start .answer p{font-size:14px}.landing #contact{padding-top:58px;padding-bottom:50px}#contact h2{font-size:34px;margin-top:86px;padding-right:0}#contact .contact-desc{font-size:15px}.contact-orbit{width:100px;height:100px;right:24px;top:48px;opacity:1}.orbit-star{inset:6px;font-size:125px;padding-top:20px}.orbit-ring::before{width:9px;height:9px;left:10px;top:10px}#contact .contact-links{margin-top:38px}#contact .contact-links>a{grid-template-columns:1fr 38px;gap:7px 14px;padding:24px 0}#contact .contact-links>a>span:first-child{grid-column:1}#contact .contact-links strong{grid-column:1;font-size:22px}#contact .contact-links>a>span:last-child{grid-column:2;grid-row:1/3}.footer-note{margin-bottom:32px;gap:20px}.footer-note>span:first-child{font-size:8px;max-width:135px}.footer-note>span:last-child{font-size:12px}body>footer .footer-brand{font-size:17vw}body>footer .footer-bottom{margin-top:30px;font-size:9px}}
@media(max-width:360px){#about .approach-item summary{grid-template-columns:1fr 60px 24px;padding:18px 14px;gap:8px}#about .process-art{width:60px}#about .approach-item h3{font-size:20px}#about .approach-toggle{width:24px;height:24px}.faq-mark{font-size:60px;right:0}#before-start .before-intro h2{font-size:27px}#contact .contact-links strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.process-art .art-primary,.process-art .art-secondary,.contact-orbit,body>footer .footer-brand span{transform:none!important;transition:none!important}#contact .contact-links>a,#contact .contact-links>a>span:last-child{transition:none}}
@media(max-width:600px){#contact .contact-links>a>span:first-child{grid-row:1}#contact .contact-links strong{grid-row:2}}
