/* Crawlable service and project pages, sharing Codeverly's visual language. */
.service-directory{margin-top:65px;border-top:1px solid #bbc7aa;padding-top:30px;display:grid;grid-template-columns:1fr 2fr;gap:50px}.service-directory h3{font-size:24px;max-width:190px}.service-directory nav{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.service-directory a{font-size:14px;display:flex;justify-content:space-between;gap:15px;align-items:center;line-height:1.6;padding:15px 0;border-bottom:1px solid #bbc7aa}.service-directory a:hover{color:#466720}.footer-directory{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:60px;padding:18px 0 58px;border-bottom:1px solid #ffffff26;margin-bottom:40px}.footer-directory h3{font-family:var(--font);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:#c7ef6a;margin-bottom:20px}.footer-directory a{display:block;font-size:13px;line-height:1.7;margin-bottom:9px;color:#d8dece}.footer-directory a:hover{color:var(--lime);text-decoration:underline;text-underline-offset:4px}.footer-directory p{font-size:11px;color:#9daa91;line-height:1.9;margin-top:20px}.work-case{display:inline-flex;align-items:center;gap:20px}.detail-page .site-header{background:#f4f4edf5}.detail-page main{padding-top:88px}.detail-hero{padding-block:64px 90px;display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:center;border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:11px;color:#606b55;line-height:1.8;margin-bottom:65px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.detail-hero .eyebrow,.detail-portfolio>.eyebrow{font-size:9px;letter-spacing:.11em;color:#5c6e48;margin-bottom:24px}.detail-hero h1,.detail-portfolio h1{font-size:clamp(46px,4.9vw,76px);line-height:1.09;letter-spacing:-.065em;margin:0 0 29px;font-weight:600;text-wrap:balance}.detail-dot{color:#789c3e}.detail-lead{font-size:17px;line-height:1.9;max-width:690px;color:#526048}.detail-hero .button{margin-top:32px;font-size:12px}.detail-diagram{position:relative;background:#192116;color:#ecf2e6;border:1px solid #293d1b;border-radius:7px;padding:36px 32px;overflow:hidden}.detail-diagram::before{position:absolute;content:'';width:350px;height:350px;border:1px solid #c7ef6a1e;border-radius:50%;left:40%;top:-145px;box-shadow:0 0 0 35px #c7ef6a08}.diagram-symbol{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--lime);color:#192116;font-size:36px;margin-bottom:40px}.detail-diagram .small-label{font-size:8px;position:relative;color:#bacaab}.detail-diagram ol{list-style:none;padding:0;margin:20px 0 25px}.detail-diagram li{display:flex;align-items:center;gap:15px;border-top:1px solid #c7ef6a27;padding-block:20px;font-size:14px;line-height:1.5}.detail-diagram li>span{font-size:10px;color:#a4c379}.detail-diagram>p{font-size:11px;color:#a2b392;line-height:1.8;max-width:230px}.detail-body{display:grid;grid-template-columns:240px minmax(0,720px);gap:clamp(50px,8vw,130px);padding-block:85px 100px;justify-content:space-between;align-items:start}.detail-toc{position:sticky;top:122px;font-size:12px;color:#5b6c4e;line-height:1.9}.detail-toc .eyebrow{font-size:9px;color:#526444;margin-bottom:20px}.detail-toc nav a{display:block;padding:10px 0;border-bottom:1px solid var(--line);line-height:1.6}.detail-toc a:hover{color:#375b16;text-decoration:underline;text-underline-offset:3px}.detail-toc>p:not(.eyebrow){margin-top:25px;font-size:11px}.detail-toc>.text-link{font-size:11px;margin-top:25px}.detail-copy h2{font-size:clamp(28px,3vw,39px);line-height:1.17;letter-spacing:-.05em;margin:0 0 24px;text-wrap:balance}.detail-copy p{font-size:15px;line-height:2;color:#53604b}.detail-section{margin-bottom:58px;scroll-margin-top:120px}.detail-section ul{padding-left:20px;margin:0;color:#53604b;line-height:1.9;font-size:15px}.detail-section li{padding-left:6px;margin-bottom:13px}.detail-section li::marker{color:#789943}.detail-faq{border-top:1px solid var(--line);padding-top:48px;margin-top:15px}.detail-faq h2{margin-bottom:30px}.detail-faq details{border-bottom:1px solid var(--line)}.detail-faq summary{cursor:pointer;font-weight:600;font-size:14px;line-height:1.7;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0}.detail-faq summary::-webkit-details-marker{display:none}.detail-faq summary span{font-size:26px;font-weight:400;color:#718f49;transition:transform .2s}.detail-faq details[open] summary span{transform:rotate(45deg)}.detail-faq details p{font-size:14px;padding:0 30px 25px 0}.related-services{padding-top:60px;margin-top:25px}.related-services h2{font-size:27px;margin-bottom:25px}.related-services a{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:14px;line-height:1.7;padding:17px 0;border-bottom:1px solid var(--line)}.related-services a:hover{color:#466720}.detail-cta{background:var(--lime);padding-block:90px}.detail-cta .eyebrow{font-size:9px;margin-bottom:27px}.detail-cta h2{font-size:clamp(40px,5.5vw,78px);line-height:1.08;font-weight:600}.detail-cta p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:560px;margin-top:30px}.detail-cta .button{margin-top:30px;font-size:13px}.detail-email{display:inline-block;font-size:14px;margin-left:28px;border-bottom:1px solid currentColor}.detail-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-top:5px}.detail-footer-bottom p{font-size:10px;color:#a3af97}.detail-page .site-footer{padding-block:45px}.detail-case-hero{grid-template-columns:1fr 1fr;gap:55px}.detail-case-hero h1{font-size:clamp(44px,4.7vw,68px)}.detail-case-image{margin:0;align-self:center}.detail-case-image img{border-radius:5px;border:1px solid #ced5c3;box-shadow:0 15px 35px #19211612}.detail-case-image figcaption{font-size:10px;line-height:1.8;color:#657456;margin-top:16px}.case-observation{font-size:11px!important;border-top:1px solid var(--line);padding-top:20px}.detail-portfolio{padding-block:64px 100px}.detail-portfolio h1{font-size:clamp(49px,6.3vw,90px)}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:65px}.portfolio-image{display:block;border-radius:5px;overflow:hidden;border:1px solid #d0d8c6;margin-bottom:30px}.portfolio-image img{width:100%;transition:transform .4s}.portfolio-image:hover img{transform:scale(1.025)}.portfolio-grid .eyebrow{font-size:9px;color:#64744f;margin-bottom:12px}.portfolio-grid h2{font-size:30px;line-height:1.2;margin-bottom:18px}.portfolio-grid article>p:not(.eyebrow){font-size:14px;color:#53604b;line-height:1.9;max-width:470px}.portfolio-grid .text-link{font-size:12px;margin-top:22px}.detail-page a,.detail-page button{touch-action:manipulation}
@media(max-width:1150px){.detail-hero{gap:45px}.detail-body{grid-template-columns:215px minmax(0,1fr);gap:55px}.detail-page main{padding-top:82px}.footer-directory{gap:35px}.detail-hero h1{font-size:clamp(43px,5.5vw,62px)}.detail-diagram{padding:30px 25px}.detail-case-hero{gap:35px}}
@media(max-width:900px){.detail-hero{grid-template-columns:1.1fr .9fr;gap:30px}.detail-hero h1{font-size:47px}.detail-lead{font-size:15px}.detail-body{grid-template-columns:180px minmax(0,1fr);gap:35px}.detail-copy h2{font-size:29px}.detail-diagram li{font-size:12px}.footer-directory{grid-template-columns:1fr 1fr;gap:35px}.footer-directory>div:last-child{grid-column:1/-1}.detail-case-hero{grid-template-columns:1fr}.detail-case-image{max-width:700px}.detail-case-hero .breadcrumbs{margin-bottom:40px}.service-directory{gap:35px}.service-directory nav{grid-template-columns:1fr}.detail-footer-bottom{flex-wrap:wrap}}
@media(max-width:680px){.detail-page main{padding-top:73px}.detail-hero{padding-block:30px 44px;grid-template-columns:1fr;gap:40px}.breadcrumbs{font-size:10px;gap:7px 10px;margin-bottom:40px}.detail-hero h1{font-size:clamp(41px,10.5vw,65px);line-height:1.12;margin-bottom:23px}.detail-hero .eyebrow{font-size:8px;margin-bottom:20px}.detail-lead{font-size:15px;line-height:1.9}.detail-hero .button{font-size:11px;min-height:50px;margin-top:27px;padding-inline:18px}.detail-diagram{padding:26px}.diagram-symbol{width:50px;height:50px;font-size:28px;margin-bottom:26px}.detail-diagram ol{margin:15px 0 20px}.detail-diagram li{font-size:14px;padding-block:17px}.detail-diagram>p{max-width:none}.detail-body{grid-template-columns:1fr;padding-block:40px 60px;gap:45px}.detail-toc{position:static}.detail-toc nav{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.detail-toc nav a{font-size:11px}.detail-toc>p:not(.eyebrow){font-size:11px;margin-top:20px}.detail-section{margin-bottom:42px}.detail-copy h2{font-size:30px;line-height:1.2;margin-bottom:20px}.detail-copy p,.detail-section ul{font-size:14px;line-height:1.95}.detail-faq{padding-top:35px}.detail-faq summary{font-size:13px;gap:18px}.detail-faq details p{font-size:13px;padding-right:12px}.related-services{padding-top:40px}.related-services h2{font-size:26px}.related-services a{font-size:13px}.detail-cta{padding-block:57px}.detail-cta h2{font-size:clamp(36px,10vw,55px)}.detail-cta .eyebrow{font-size:8px}.detail-cta p:not(.eyebrow){font-size:14px;margin-top:25px}.detail-cta .button{font-size:12px}.detail-email{display:table;margin:23px 0 0;font-size:14px}.footer-directory{grid-template-columns:1fr 1fr;gap:32px 20px;padding-bottom:32px;margin-bottom:30px}.footer-directory h3{font-size:9px;margin-bottom:16px}.footer-directory a{font-size:12px}.footer-directory p{font-size:10px}.footer-directory>div:last-child{grid-column:1/-1}.detail-footer-bottom{flex-direction:column;align-items:flex-start;gap:20px}.detail-footer-bottom .privacy-button{font-size:11px}.detail-case-hero{gap:32px}.detail-case-image figcaption{font-size:9px}.detail-portfolio{padding-block:30px 65px}.detail-portfolio h1{font-size:clamp(42px,11vw,65px)}.portfolio-grid{grid-template-columns:1fr;gap:45px;margin-top:40px}.portfolio-grid h2{font-size:28px}.portfolio-grid article>p:not(.eyebrow){font-size:14px}.portfolio-image{margin-bottom:23px}.service-directory{grid-template-columns:1fr;gap:12px;margin-top:35px;padding-top:25px}.service-directory h3{font-size:23px;max-width:none;margin-bottom:0}.service-directory a{font-size:13px;padding-block:17px}}
@media(prefers-reduced-motion:reduce){.portfolio-image img,.detail-faq summary span{transition:none}}

/* Section headings stand on their own without numbered captions. */
.manifesto-top{justify-content:flex-end}
