/* Shared navigation and content system. */
.desktop-nav{gap:28px;margin-right:30px;align-items:center}.nav-group{display:flex;align-items:center}.nav-services{border:0;background:none;font-size:16px;padding:7px 0;display:flex;align-items:center;gap:10px;color:var(--ink)}.nav-services{gap:8px}.nav-chevron{display:inline-flex;width:12px;height:12px;flex:none;transition:transform .2s ease}.nav-chevron svg{width:100%;height:100%;display:block}.nav-services[aria-expanded=true] .nav-chevron{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.nav-chevron{transition:none}}.nav-services[data-current=true],.desktop-nav a[aria-current=page]{color:#3d592e}.desktop-nav a[aria-current=page]:after{width:100%}.mega-menu{position:fixed;top:103px;left:50%;transform:translateX(-50%);width:min(860px,calc(100vw - 90px));max-height:calc(100dvh - 140px);overflow:auto;background:#f8f7f3;border:1px solid #cbd3c1;padding:28px;box-shadow:0 22px 45px #26341f1a;z-index:40}.mega-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:20px;border-bottom:1px solid var(--line)}.mega-top>a{font-size:15px}.mega-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 25px;margin-top:12px}.mega-grid>a{display:flex;flex-direction:column;gap:8px;padding:18px 10px!important;line-height:1.7}.mega-grid>a:hover{background:#e9eee1}.mega-grid>a:after{display:none}.mega-grid strong{font-size:17px;font-weight:500;display:flex;justify-content:space-between;gap:20px}.mega-grid>a>span{font-size:14px;color:#48583e}.mobile-services{border:0!important}.mobile-services summary{font-size:22px;font-weight:500;line-height:1.6;padding:0;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.mobile-services summary::-webkit-details-marker{display:none}.mobile-services summary>span{font-size:25px;font-weight:400}.mobile-services[open] summary>span{transform:rotate(45deg)}.mobile-services>div{display:flex;flex-direction:column;padding-top:10px;gap:0}.mobile-services>div>a{font-size:16px;min-height:44px;padding:9px 14px;border-left:1px solid #bdc9b0;line-height:1.6}.mobile-nav{max-height:calc(100dvh - 100px);overflow:auto}.footer-directory{display:grid;grid-template-columns:1.2fr 1fr .9fr 1.2fr;gap:45px;padding-block:55px 45px}.footer-directory>div{display:flex;flex-direction:column;align-items:flex-start;gap:11px}.footer-directory .brand{margin-bottom:15px}.footer-directory h2{font-size:17px;line-height:1.5;letter-spacing:0;font-weight:500;margin:0 0 9px}.footer-directory p{font-size:16px;color:#405137;line-height:1.8}.footer-directory>div>span{font-size:14px;color:#43563a;margin-top:6px}.footer-directory>div>a:not(.brand),.footer-directory button{font-size:15px;line-height:1.8;text-align:left;color:#3c4e33;background:none;border:0;padding:3px 0}.footer-directory>div>a:not(.brand):hover,.footer-directory button:hover{text-decoration:underline;text-underline-offset:5px}.footer-bottom a{font-size:14px}.inner-page{background:var(--paper)}.inner-page h1{font-size:clamp(42px,4.1vw,66px);line-height:1.16;letter-spacing:-2.4px}.inner-page h1>span{color:#46553f}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:13px;padding-top:32px;font-size:14px;line-height:1.8;color:#405137}.breadcrumbs a{border-bottom:1px solid #bac7ad}.breadcrumbs>span[aria-current]{color:#3d4935}.detail-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center;padding-block:50px 80px}.detail-hero h1{margin:22px 0 26px}.detail-hero>div>p{font-size:19px;line-height:1.85;color:#3f4e36;max-width:610px}.detail-hero .button,.detail-hero .underlink{margin-top:28px}.detail-photo{margin:0;position:relative;height:460px;overflow:hidden;border-radius:48% 52% 47% 53% / 43% 46% 54% 57%;background:#e7e9dd;isolation:isolate}.detail-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%}.detail-photo:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#162512d9);z-index:1;pointer-events:none}.detail-photo figcaption{position:absolute;left:15%;right:12%;bottom:15%;color:#fff;font-size:16px;line-height:1.6;z-index:2}.detail-photo small{display:block;font-size:14px;margin-top:7px;color:white}.audience-strip{border-block:1px solid var(--line);background:#ecefe5;padding-block:28px}.audience-strip>.wrap{display:grid;grid-template-columns:1fr 2.5fr;gap:50px;align-items:start}.audience-strip .eyebrow{padding-top:4px}.audience-strip p{font-size:19px;line-height:1.8;max-width:850px;color:#34482b}.detail-options{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.detail-options article{border-top:1px solid #b4c1a8;padding-top:22px}.detail-options h3{font-size:25px;line-height:1.3;margin-block:18px 17px}.detail-options p{font-size:18px;line-height:1.85;color:#43543a}.deliverables-band{background:#e8ede1;border-block:1px solid #cdd8c2}.deliverables-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:100px;padding-block:80px}.deliverables-layout h2{margin:25px 0;font-size:48px;line-height:1.17}.deliverables-layout>div>p{font-size:17px;color:#405437;line-height:1.85;max-width:430px}.deliverable-list{list-style:none;margin:0;padding:0}.deliverable-list li{display:flex;align-items:flex-start;gap:23px;border-bottom:1px solid #becdb1;padding:20px 0}.deliverable-list li:first-child{padding-top:4px}.deliverable-list li>span{font-size:14px;color:#435b37;line-height:1.8}.deliverable-list p{font-size:18px;line-height:1.8;color:#2f4326}.preparation{display:grid;grid-template-columns:1fr 1.25fr;gap:100px}.preparation h2{margin-top:22px;font-size:48px}.preparation ul{padding-left:22px;margin:0 0 28px;color:#3d4f32;font-size:18px;line-height:1.85}.preparation li+li{margin-top:15px}.page-faq{display:grid;grid-template-columns:1fr 1.25fr;gap:100px;border-top:1px solid var(--line);padding-top:65px}.page-faq h2{font-size:45px;margin-top:22px}.page-faq details{border-bottom:1px solid #bdc9b1}.page-faq details:first-child{border-top:1px solid #bdc9b1}.page-faq summary{font-size:18px;line-height:1.6;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px 0;cursor:pointer}.page-faq summary::-webkit-details-marker{display:none}.page-faq summary>span{font-size:25px;flex-shrink:0;line-height:1}.page-faq details[open] summary>span{transform:rotate(45deg)}.page-faq details p{font-size:17px;line-height:1.85;padding:0 25px 23px 0;color:#3f5234}.page-cta{display:flex;align-items:center;justify-content:space-between;gap:65px;background:#e8ede0;padding:50px;margin-bottom:80px;position:relative;isolation:isolate;overflow:hidden}.page-cta:before{content:'';position:absolute;right:-10%;top:-30%;width:70%;height:160%;border-radius:50%;border:1px solid #b8c7a8;transform:rotate(-27deg);z-index:-1}.page-cta h2{font-size:43px;line-height:1.2;margin-block:22px}.page-cta p{font-size:18px;line-height:1.85;color:#3b4e31;max-width:580px}.page-cta .button{flex-shrink:0}.text-hero{padding-block:55px 75px;max-width:1440px}.text-hero h1{margin-block:25px 28px;max-width:1050px}.text-hero p{font-size:21px;line-height:1.85;max-width:850px;color:#3e4f35}.service-hub{border-top:1px solid #bdc9b0}.hub-row{display:grid;grid-template-columns:55px 1fr 50px;gap:35px;border-bottom:1px solid #bdc9b0;padding:40px 0;align-items:start;transition:background .25s}.hub-row:hover{background:#e9eee2}.hub-num{font-size:15px;color:#4a623b;padding-top:5px}.hub-row h2{font-size:35px;line-height:1.2;letter-spacing:-1px}.hub-row p{font-size:18px;line-height:1.8;color:#3f5135;max-width:850px;margin-top:17px}.hub-arrow{font-size:35px;line-height:1}.choice-note{padding-block:65px 80px}.choice-note h2{font-size:33px;line-height:1.25}.choice-note p{font-size:19px;line-height:1.85;color:#405338;max-width:850px;margin:24px 0}.stages{border-top:1px solid #bdc9b0}.stages article{display:grid;grid-template-columns:100px 1fr;gap:45px;padding:40px 0;border-bottom:1px solid #bdc9b0}.stage-number{font-size:38px;line-height:1.3;color:#516e3c}.stages h2{font-size:33px;line-height:1.2;letter-spacing:-1px}.stages p{font-size:19px;line-height:1.85;color:#3c5031;max-width:870px;margin-block:20px}.stages strong{font-size:16px;line-height:1.8;color:#344d28;font-weight:500;display:block}.project-agreements{padding-block:90px}.project-agreements>h2{margin:25px 0 40px;font-size:46px}.about-statement h2{margin-block:25px 30px;max-width:1150px;font-size:46px}.about-statement>p{font-size:21px;line-height:1.9;max-width:920px;color:#3d5033}.inner-page .deliverables-band+.page-cta{margin-top:80px}.home-guides{border-top:1px solid var(--line)}.guides-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.guide-card{display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid #b7c6a8;border-bottom:1px solid #b7c6a8;padding-block:23px;min-width:0}.guide-card:hover h3{color:#526f3d}.guide-meta{font-size:14px;color:#3b542e;line-height:1.8;display:flex;gap:20px;justify-content:space-between;width:100%}.guide-card h3{font-size:26px;line-height:1.3;margin:24px 0 17px;letter-spacing:-.6px;transition:color .2s}.guide-card>p{font-size:17px;line-height:1.85;color:#405536;margin-bottom:26px}.guide-link{font-size:16px;display:flex;justify-content:space-between;align-items:center;width:100%;gap:25px;margin-top:auto;color:#314728}.guide-link>span{font-size:23px}.guide-hub{padding-bottom:90px}.guide-filters{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 38px}.guide-filters button{font-size:16px;color:#314c24;border:1px solid #adbd9e;background:transparent;padding:11px 20px;min-height:46px}.guide-filters button[aria-pressed=true]{background:#435837;color:white;border-color:#435837}.article-header{padding-block:52px 65px;border-bottom:1px solid var(--line)}.article-header h1{max-width:1050px;margin:25px 0}.article-header>p{max-width:900px;font-size:21px;line-height:1.85;color:#3a4e30}.article-byline{display:block;font-size:15px;line-height:1.8;color:#3a522e;margin-top:25px}.reading-layout{display:grid;grid-template-columns:260px minmax(0,820px);gap:80px;padding-top:65px;justify-content:space-between;align-items:start}.article-toc{position:sticky;top:135px;display:flex;flex-direction:column;gap:20px;max-width:260px}.article-toc>p{font-size:16px;font-weight:500;color:#283d20}.article-toc nav{display:flex;flex-direction:column;gap:15px;border-left:1px solid #b9c9a9;padding-left:18px}.article-toc nav a{font-size:15px;line-height:1.7;color:#3d5530}.article-toc nav a:hover{text-decoration:underline;text-underline-offset:5px}.article-toc>.underlink{font-size:15px;align-self:flex-start}.reading-content section{scroll-margin-top:120px;padding-bottom:40px}.reading-content h2{font-size:31px;line-height:1.3;letter-spacing:-.8px;margin-bottom:23px}.reading-content p,.reading-content li{font-size:19px;line-height:1.95;color:#34492a}.reading-content p+p{margin-top:20px}.reading-content ul,.reading-content ol{padding-left:25px;margin:25px 0}.reading-content li+li{margin-top:15px}.reading-content strong{font-weight:500;color:#263f1b}.reading-table{overflow:auto;border:1px solid #bdcbb0;margin-bottom:24px}.reading-table table{border-collapse:collapse;width:100%;min-width:480px}.reading-table th,.reading-table td{text-align:left;vertical-align:top;border-bottom:1px solid #c8d2bd;padding:16px;font-size:16px;line-height:1.8;color:#314a24}.reading-table th{background:#e7eddf;font-weight:500}.reading-table tr:last-child td{border-bottom:0}.article-takeaway{padding:32px;background:#e8eedf;margin-top:10px}.article-takeaway h2{font-size:29px}.article-takeaway .button{margin-top:26px}.related-guides .guides-grid{grid-template-columns:1fr 1fr}.related-guides .section-heading h2{font-size:40px}.project-checklist{margin-top:25px;border-top:1px solid #b8c6a8}.project-checklist label{display:flex;flex-direction:row;align-items:flex-start;gap:16px;font-size:18px;line-height:1.8;padding:20px 0;border-bottom:1px solid #c0ceb1;cursor:pointer;color:#304923}.project-checklist input{width:22px;height:22px;flex-shrink:0;accent-color:#435a34;margin:5px 0 0;cursor:pointer}.reading-content .checklist-progress{font-size:16px;font-weight:500;color:#365028;margin:20px 0 23px}
@media(max-width:1150px){.desktop-nav{gap:23px;margin-right:12px}.mega-menu{top:93px}.footer-directory{gap:30px;grid-template-columns:1.15fr 1fr 1fr}.footer-directory>div:last-child{grid-column:2/4;display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.footer-directory>div:last-child>h2{grid-column:1/-1}.detail-hero{gap:40px}.detail-photo{height:420px}.detail-hero h1{font-size:48px}.detail-options{gap:30px}.detail-options h3{font-size:23px}.deliverables-layout,.preparation,.page-faq{gap:60px;grid-template-columns:1fr 1.15fr}.deliverables-layout h2,.preparation h2{font-size:43px}.page-faq h2{font-size:40px}.page-cta{gap:35px;padding:40px}.page-cta h2{font-size:37px}.page-cta .button{font-size:15px;gap:20px}.guides-grid{gap:24px}.guide-card h3{font-size:23px}.guide-card>p{font-size:17px}.guide-meta{flex-wrap:wrap;gap:5px 15px}.reading-layout{grid-template-columns:220px minmax(0,1fr);gap:55px}.reading-content h2{font-size:29px}.reading-content p,.reading-content li{font-size:18px}}
@media(max-width:900px){.desktop-nav{display:none}.mega-menu{display:none}.footer-directory{grid-template-columns:1fr 1fr;gap:40px}.footer-directory>div:last-child{grid-column:auto;display:flex}.detail-hero{gap:35px;grid-template-columns:1fr;padding-top:40px}.detail-hero h1{font-size:51px;max-width:750px}.detail-hero>div>p{max-width:750px}.detail-photo{height:400px;max-width:650px;width:100%;justify-self:center;border-radius:46% 54% 44% 56% / 44% 40% 60% 56%}.detail-photo figcaption{bottom:13%;max-width:450px;left:15%}.audience-strip>.wrap{grid-template-columns:1fr;gap:15px}.detail-options{grid-template-columns:1fr;gap:30px}.detail-options h3{font-size:26px;margin-block:15px}.detail-options p{max-width:720px}.deliverables-layout,.preparation,.page-faq{grid-template-columns:1fr;gap:35px}.deliverables-layout>div>p{max-width:650px}.deliverables-layout h2 br,.preparation h2 br{display:none}.page-cta{flex-direction:column;align-items:flex-start;padding:38px}.page-cta p{max-width:640px}.text-hero p{font-size:20px}.text-hero h1{font-size:50px}.hub-row{gap:25px;grid-template-columns:35px 1fr 35px}.hub-row h2{font-size:30px}.stages article{grid-template-columns:65px 1fr;gap:30px}.project-agreements>h2,.about-statement h2{font-size:41px}.guides-grid{grid-template-columns:1fr 1fr;gap:28px}.guide-card h3{font-size:25px}.reading-layout{grid-template-columns:1fr;gap:40px;padding-top:40px}.article-toc{position:static;max-width:none;border-bottom:1px solid var(--line);padding-bottom:25px}.article-toc nav{display:grid;grid-template-columns:1fr 1fr;gap:15px 25px}.reading-content{max-width:780px}.reading-content p,.reading-content li{font-size:19px}.article-header h1{font-size:50px}.related-guides .section-heading{align-items:flex-start}}
@media(max-width:650px){.footer-directory{grid-template-columns:1fr 1fr;gap:34px 22px;padding-block:40px}.footer-directory>div:first-child{grid-column:1/-1}.footer-directory>div:last-child{grid-column:1/-1}.footer-directory h2{font-size:17px;margin-bottom:5px}.footer-directory>div>a:not(.brand),.footer-directory button{font-size:15px;min-height:42px;padding:5px 0}.footer-directory>div:last-child>a{min-height:40px}.footer-directory>div>span{font-size:14px}.inner-page h1{font-size:37px;line-height:1.2;letter-spacing:-1.4px}.breadcrumbs{font-size:14px;gap:9px;padding-top:25px;line-height:1.8}.breadcrumbs>span[aria-current]{max-width:100%}.detail-hero{padding-block:32px 45px;gap:35px}.detail-hero h1{margin:20px 0 24px}.detail-hero>div>p{font-size:18px;line-height:1.85}.detail-hero .button{font-size:16px}.detail-photo{height:345px;width:calc(100% + 10px);max-width:none;justify-self:center}.detail-photo figcaption{font-size:15px;left:15%;right:13%;bottom:15%}.detail-photo small{font-size:14px}.audience-strip{padding-block:26px}.audience-strip p{font-size:18px;line-height:1.85}.detail-options{gap:30px}.detail-options h3{font-size:25px;line-height:1.3}.detail-options p{font-size:18px;line-height:1.85}.deliverables-layout{padding-block:50px}.deliverables-layout h2,.preparation h2{font-size:35px;line-height:1.2;letter-spacing:-1.4px}.deliverables-layout>div>p{font-size:17px}.deliverable-list li{gap:15px;padding-block:18px}.deliverable-list p{font-size:18px}.deliverable-list li>span{font-size:14px}.preparation{gap:30px}.preparation h2{margin-top:20px}.preparation ul{font-size:18px;padding-left:20px}.preparation .underlink{font-size:16px}.page-faq{padding-top:48px;gap:30px}.page-faq h2{font-size:35px;letter-spacing:-1.4px}.page-faq summary{font-size:18px;gap:20px;line-height:1.7}.page-faq details p{font-size:17px;padding-right:0}.page-cta{padding:30px 25px;gap:25px;margin-bottom:50px}.page-cta h2{font-size:33px;letter-spacing:-1.2px;line-height:1.2;margin-block:20px}.page-cta p{font-size:18px}.page-cta .button{font-size:15px;gap:24px}.text-hero{padding-block:35px 48px}.text-hero h1{font-size:38px;margin-block:22px 25px}.text-hero p{font-size:19px;line-height:1.85}.hub-row{grid-template-columns:25px 1fr 23px;gap:14px;padding-block:28px}.hub-num{font-size:14px}.hub-row h2{font-size:27px;line-height:1.25}.hub-row p{font-size:17px;line-height:1.85;margin-top:15px}.hub-arrow{font-size:25px}.choice-note{padding-block:45px 55px}.choice-note h2{font-size:30px;letter-spacing:-.9px;line-height:1.25}.choice-note p{font-size:18px}.stages article{grid-template-columns:32px 1fr;gap:18px;padding-block:30px}.stage-number{font-size:24px}.stages h2{font-size:27px;letter-spacing:-.8px;line-height:1.3}.stages p{font-size:18px;line-height:1.85}.stages strong{font-size:16px;line-height:1.85}.project-agreements{padding-block:55px}.project-agreements>h2{font-size:34px;letter-spacing:-1px;line-height:1.25;margin-block:20px 30px}.about-statement h2{font-size:34px;letter-spacing:-1px;line-height:1.25}.about-statement>p{font-size:19px;line-height:1.9}.inner-page .deliverables-band+.page-cta{margin-top:50px}.guides-grid,.related-guides .guides-grid{grid-template-columns:1fr;gap:30px}.guide-card{padding-block:23px}.guide-meta{font-size:14px;flex-wrap:nowrap;gap:16px}.guide-card h3{font-size:27px;line-height:1.3;margin-block:23px 17px}.guide-card>p{font-size:18px;line-height:1.85}.guide-link{font-size:16px}.guide-filters{gap:10px;margin-bottom:28px}.guide-filters button{font-size:15px;padding:10px 15px}.guide-hub{padding-bottom:55px}.article-header{padding-block:32px 38px}.article-header h1{font-size:37px;margin-block:22px 25px;line-height:1.2}.article-header>p{font-size:19px;line-height:1.85}.article-byline{font-size:14px;margin-top:22px}.reading-layout{padding-top:30px;gap:32px}.article-toc{gap:17px}.article-toc nav{grid-template-columns:1fr;gap:12px}.article-toc nav a{font-size:16px;line-height:1.8}.article-toc>.underlink{font-size:16px}.reading-content h2{font-size:27px;line-height:1.3;letter-spacing:-.7px;margin-bottom:20px}.reading-content p,.reading-content li{font-size:18px;line-height:1.95}.reading-content section{padding-bottom:35px;scroll-margin-top:110px}.reading-table th,.reading-table td{font-size:16px;padding:13px}.article-takeaway{padding:26px 22px}.article-takeaway h2{font-size:27px}.article-takeaway .button{font-size:15px}.related-guides .section-heading h2{font-size:32px;letter-spacing:-1px}.project-checklist label{font-size:18px;gap:13px;line-height:1.85}.project-checklist input{width:23px;height:23px}.reading-content .checklist-progress{font-size:16px}.project-checklist~.button{font-size:15px}}

/* Detail hero photo (about + service pages): organic frame with the caption as a
   card outside the clipped area, matching the home hero caption. */
.detail-photo{height:auto;overflow:visible;border-radius:0;background:none;isolation:isolate;padding-bottom:30px}
.detail-photo:after{content:none}
.detail-photo:before{content:'';position:absolute;inset:-16px -16px 14px -16px;border:1px solid #c3cbb8;border-radius:200px 280px 220px 150px / 180px 220px 200px 160px;transform:rotate(-2.5deg);z-index:-1;pointer-events:none}
.detail-photo-frame{position:relative;height:480px;overflow:hidden;border-radius:170px 250px 190px 120px / 150px 190px 170px 130px;background:#e7e9dd}
.detail-photo-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%}
.detail-photo figcaption{position:absolute;left:28px;right:auto;bottom:0;max-width:calc(100% - 56px);display:flex;flex-direction:column;gap:3px;padding:13px 22px;background:#f8f7f3f5;border-left:2px solid #46553f;box-shadow:0 14px 32px #26341f14;color:#253a20;font-size:16px;font-weight:500;line-height:1.45;z-index:2}
.detail-photo small{display:block;margin:0;font-size:14px;font-weight:400;line-height:1.45;color:#405437}
@media(max-width:1150px){.detail-photo-frame{height:430px}}
@media(max-width:900px){.detail-photo{height:auto;max-width:650px;width:100%;justify-self:center;border-radius:0}.detail-photo-frame{height:400px}.detail-photo figcaption{left:28px;bottom:0;max-width:calc(100% - 56px)}}
@media(max-width:650px){.detail-photo{width:100%;padding-bottom:26px}.detail-photo:before{inset:-10px -8px 12px -8px;border-radius:120px 160px 130px 90px / 110px 130px 120px 90px}.detail-photo-frame{height:300px;border-radius:100px 140px 110px 70px / 90px 110px 100px 70px}.detail-photo figcaption{left:14px;padding:10px 14px;font-size:15px;max-width:calc(100% - 28px)}.detail-photo small{font-size:13px}}

/* ---- Pages migrated from the previous website (blog, portfolio, careers…) ---- */
.reading-content h3{font-size:23px;line-height:1.35;letter-spacing:-.4px;margin:30px 0 12px;font-weight:500;color:#263f1b}
.reading-content h4{font-size:19px;line-height:1.4;margin:24px 0 10px;font-weight:500;color:#263f1b}
.reading-content a{color:#2f4a22;text-decoration:underline;text-decoration-color:#9fb38c;text-underline-offset:4px}
.reading-content a:hover{text-decoration-color:currentColor}
.reading-content img{display:block;max-width:100%;height:auto;margin:26px 0;border-radius:18px}
.reading-content blockquote{border-left:2px solid #46553f;padding:4px 0 4px 22px;margin:26px 0}
.reading-content code{font-size:.92em;background:#e8ede0;padding:2px 6px}
.article-cover{margin:45px auto 0}
.article-cover img{display:block;width:100%;height:auto;max-height:600px;object-fit:cover;border-radius:28px;background:#e7e9dd}

.project-section .section-heading{margin-bottom:45px}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 30px}
.project-card{display:flex;flex-direction:column;min-width:0;border-bottom:1px solid #b7c6a8;padding-bottom:24px}
.project-card-photo{position:relative;margin:0 0 20px;aspect-ratio:4/3;overflow:hidden;border-radius:22px;background:#e7e9dd}
.project-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
a.project-card:hover .project-card-photo img{transform:scale(1.035)}
a.project-card:hover h3{color:#526f3d}
.project-badge{position:absolute;left:14px;top:14px;background:#f8f7f3f2;border-left:2px solid #46553f;padding:5px 12px;font-size:13px;color:#253a20}
.project-card-body{display:flex;flex-direction:column;flex:1}
.project-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:14px;color:#3b542e;line-height:1.7}
.project-card h3{font-size:24px;line-height:1.3;letter-spacing:-.5px;margin:12px 0 12px;transition:color .2s}
.project-card-body>p:not(.project-meta){font-size:16px;line-height:1.8;color:#405536}
.project-card-body>p+p{margin-top:10px}
.project-tagline{font-weight:500;color:#2f4426!important}
.project-tech{font-size:15px!important}
.project-card .guide-link{margin-top:auto;padding-top:20px}
.project-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 30px;margin-top:28px}
.project-actions .button,.project-actions .underlink{margin-top:0}

.project-overview{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:70px;align-items:start}
.project-summary{font-size:23px;line-height:1.75;color:#33482a;margin-top:22px;max-width:780px}
.project-facts{border-top:1px solid #b4c1a8;padding-top:22px}
.project-facts h2{font-size:15px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:#3b542e}
.project-facts dl{margin-top:14px}
.project-facts dl>div{display:grid;grid-template-columns:130px 1fr;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}
.project-facts dt{font-size:15px;color:#4e5948}
.project-facts dd{font-size:17px;color:#253a20}
.tech-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.tech-list li{font-size:14px;border:1px solid #b8c1ad;padding:3px 10px;background:#f8f7f3}
.project-journey{grid-template-columns:repeat(2,minmax(0,1fr))}
.project-result{font-size:38px!important;line-height:1.3}
.project-quote{margin:0;max-width:980px;border-left:2px solid #46553f;padding-left:32px}
.project-quote blockquote{margin:22px 0 18px}
.project-quote blockquote p{font-size:30px;line-height:1.45;letter-spacing:-.6px;color:#263f1b}
.project-quote figcaption{font-size:16px;color:#3b542e}

.job-list{margin-top:10px}
.empty-note{font-size:18px;color:#3f5135}
.job-facts dl>div{display:flex;flex-direction:column;gap:3px;padding:10px 0;border-bottom:1px solid var(--line)}
.job-facts dt{font-size:14px;color:#4e5948}
.job-facts dd{font-size:16px;color:#253a20}
.job-apply{border-top:1px solid var(--line);padding-top:40px}
.job-apply dl{margin:22px 0}
.job-apply dl>div{padding:10px 0;border-bottom:1px solid var(--line)}
.job-apply dt{font-size:15px;color:#4e5948}
.job-apply dd{font-size:18px;color:#253a20;margin-top:4px}
.job-apply .button{margin-top:10px}

.contact-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:70px;align-items:start;padding-top:10px}
.contact-details h2{font-size:34px;letter-spacing:-.8px}
.contact-details>p{font-size:18px;line-height:1.85;color:#3f5135;margin-top:14px;max-width:620px}
.contact-details dl{margin:30px 0}
.contact-details dl>div{display:grid;grid-template-columns:190px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}
.contact-details dl>div:first-child{border-top:1px solid var(--line)}
.contact-details dt{font-size:15px;font-weight:500;color:#2f4426}
.contact-details dd{font-size:17px;line-height:1.75;color:#33482a}
.contact-details dd a{text-decoration:underline;text-decoration-color:#9fb38c;text-underline-offset:4px}
.contact-side{display:flex;flex-direction:column;gap:22px}
.contact-card{background:#fff;border:1px solid #d8dcd2;padding:26px 28px}
.contact-card h3{font-size:21px;letter-spacing:-.3px;margin-bottom:14px}
.contact-card dl>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid var(--line);font-size:16px}
.contact-card dl>div:last-child{border-bottom:0}
.contact-card dt{color:#3f5135}
.contact-socials{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
.contact-socials a{display:inline-flex;gap:10px;align-items:center;border:1px solid #b8c1ad;padding:8px 14px;font-size:15px;background:#f8f7f3}
.contact-socials a:hover{background:#e0e7d6}
.contact-brief{background:#e8ede0;border-color:#c9d3bd}
.contact-brief p{font-size:16px;line-height:1.75;color:#3b4e31;margin-bottom:20px}

.legal-content{padding-block:55px 20px}
.legal-content .reading-content{max-width:860px}

.footer-bottom a+a{margin-left:0}

@media(max-width:1150px){.project-grid{gap:28px 24px}.project-overview,.contact-layout{gap:45px}.project-quote blockquote p{font-size:26px}}
@media(max-width:900px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-overview,.contact-layout{grid-template-columns:1fr}.project-journey{grid-template-columns:1fr}.project-result{font-size:31px!important}}
@media(max-width:650px){.project-grid{grid-template-columns:1fr;gap:30px}.project-summary{font-size:19px}.project-facts dl>div{grid-template-columns:110px 1fr}.project-quote{padding-left:20px}.project-quote blockquote p{font-size:22px}.contact-details dl>div{grid-template-columns:1fr;gap:6px}.contact-card{padding:22px}.article-cover{margin-top:28px}.article-cover img{border-radius:18px}}
