/* Shared editorial layouts for the pages beyond the home. */
.page-hero{position:relative;overflow:hidden;padding-block:76px 68px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 88% 60%,#3c4b1c22,transparent 48%)}
.page-kicker{color:#adba9e;margin-bottom:27px}
.page-title{font-size:clamp(45px,5.7vw,82px);line-height:1.09;max-width:1060px;font-weight:500;letter-spacing:-.045em}
.page-title em,.page-heading em{font-style:normal;color:#a6b096}
.page-lead{font-size:17px;color:var(--muted);line-height:1.85;max-width:710px;margin-top:25px}
.page-hero-content{position:relative;z-index:1}
.page-section{padding-block:clamp(60px,6.5vw,92px)}
.page-section.soft{background:var(--surface);border-block:1px solid #ffffff09}
.page-section.paper{background:var(--paper);color:var(--ink);--muted:#606b57;--line:#181c1a26}
.paper :focus-visible{outline-color:#384b16}
.page-grid{display:grid;grid-template-columns:210px minmax(0,1fr);gap:55px}
.page-section-label{display:flex;align-items:center;gap:15px;font-size:10px;letter-spacing:.09em;color:var(--muted);align-self:start;padding-top:7px}
.page-section-label strong{font-size:12px;font-weight:400;color:var(--accent)}
.paper .page-section-label strong{color:#52683d}
.page-heading{font-size:clamp(32px,3.8vw,53px);line-height:1.16;margin-bottom:25px;letter-spacing:-.04em}
.page-copy{font-size:16px;line-height:1.9;max-width:790px;color:var(--muted);margin-top:18px}
.paper .page-heading em{color:#7b856f}
.manifesto{max-width:1020px}
.manifesto>p{font-size:clamp(26px,3vw,41px);line-height:1.5;letter-spacing:-.03em;color:#a3ada0}
.manifesto em{font-style:normal;color:var(--text)}
.manifesto small{font-size:10px;letter-spacing:.1em;display:block;margin-top:23px;color:#919e85}
.timeline{display:grid;grid-template-columns:1fr 1fr;gap:25px 32px;margin-top:38px}
.timeline-item{border-top:1px solid var(--line);padding-top:21px}
.timeline-index,.principle-number{display:block;font-size:10px;letter-spacing:.05em;color:#9dac8d;margin-bottom:14px}
.timeline-item h3{font-size:21px;line-height:1.4;max-width:260px}
.timeline-item p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:10px}
.ecosystem-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:34px}
.ecosystem-card{padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffff01;transition:background .25s}
.ecosystem-card:hover{background:#ffffff04}
.ecosystem-card-top{display:flex;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:.04em;color:#9fac91;margin-bottom:25px}
.ecosystem-card h3{font-size:34px;font-weight:500;line-height:1.15;letter-spacing:-.035em}
.ecosystem-card p{font-size:14px;color:var(--muted);line-height:1.85;margin-top:21px;max-width:330px}
.ecosystem-card-link{display:flex;align-items:center;justify-content:space-between;font-size:12px;gap:20px;border-top:1px solid var(--line);padding-top:19px;margin-top:25px}
.ecosystem-card-link:hover{color:var(--accent)}
.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:35px;border-top:1px solid var(--line)}
.principle{padding:24px 22px 0 0}
.principle+.principle{padding-left:22px;border-left:1px solid var(--line)}
.principle-number{color:#626f56;font-size:9px}
.principle h3{font-size:25px}
.principle p{font-size:14px;color:var(--muted);line-height:1.8;margin-top:14px}
.unit-strip{font-size:11px;color:#b1bca4;display:flex;align-items:center;gap:12px;margin-top:27px}
.unit-strip>span{display:inline-block;background:var(--accent);width:6px;height:6px;border-radius:50%}
.unit-hero .page-lead{max-width:700px}
.unit-website{margin-top:20px;font-size:12px;overflow-wrap:anywhere}
.unit-visual{pointer-events:none;width:370px;height:370px;position:absolute;top:35px;right:3%;border:1px solid #d5ff6222;border-radius:50%;transform:rotate(-30deg);opacity:.32}
.unit-visual:before,.unit-visual:after{content:"";position:absolute;border:1px solid #d5ff623d;inset:30px;border-radius:50%;transform:rotateX(65deg)}
.unit-visual:after{inset:55px;transform:rotateY(65deg)}
.deploy-status{display:inline-flex;gap:9px;align-items:center;font-size:11px;letter-spacing:.03em;border:1px solid #a3b08e55;padding:6px 12px;border-radius:30px;color:#c7d1b9}
.deploy-status i{width:5px;height:5px;background:#b3bc9e;border-radius:50%}
.deploy-roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:35px}
.roadmap-step{border-top:1px solid var(--line);padding-top:22px}
.roadmap-step>span{font-size:9px;letter-spacing:.05em;color:#a6b397}
.roadmap-step h3{font-size:23px;margin-top:22px}
.roadmap-step p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:14px}
.page-cta{display:flex;align-items:center;justify-content:space-between;gap:50px}
.page-cta .eyebrow{margin-bottom:21px;color:#616d55}
.page-cta h2{font-size:clamp(35px,4vw,56px)}
.page-cta p:not(.eyebrow){color:var(--muted);font-size:15px;max-width:580px;margin-top:22px}
.page-cta .button{flex:none}
.solution-detail{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding-block:56px;border-top:1px solid var(--line);scroll-margin-top:105px}
.solution-detail:first-child{padding-top:0;border-top:0}
.solution-detail:last-child{padding-bottom:0}
.solution-id>span{font-size:10px;letter-spacing:.075em;color:#a8b998}
.solution-id .service-symbol{color:var(--accent);margin-top:45px}
.solution-id .symbol-site span:first-child,.solution-id .symbol-conversion span:nth-child(2),.solution-id .symbol-app span:first-child{background:#6b843c44}
.solution-detail h2{font-size:clamp(32px,3.5vw,48px)}
.solution-detail p{font-size:16px;line-height:1.85;color:var(--muted);margin-top:24px;max-width:670px}
.check-list{list-style:none;margin:26px 0 24px;padding:0;display:grid;gap:12px;color:#c1c9ba;font-size:14px}
.check-list li{padding-left:23px;position:relative}
.check-list li:before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;border:1px solid #c6df98;transform:rotate(45deg)}
.solution-detail .text-link{font-size:13px}
.method-list{max-width:1120px}
.method-list>article{display:grid;grid-template-columns:135px 1fr;gap:55px;border-top:1px solid var(--line);padding-block:48px}
.method-list>article:first-child{padding-top:0;border-top:0}
.method-list>article:last-child{padding-bottom:0}
.method-number{font-size:66px;font-weight:400;letter-spacing:-.06em;color:#718260;line-height:1.1}
.method-list .eyebrow{margin-bottom:20px;color:#acb99e;font-size:10px}
.method-list h2{font-size:clamp(33px,3.4vw,47px)}
.method-list p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.85;max-width:700px;margin-top:23px}
.method-delivery{display:block;margin-top:24px;border-left:1px solid var(--accent);padding-left:16px;font-size:12px;color:#ced9c3}
.faq-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:60px}
.faq-layout .eyebrow{margin-bottom:24px;color:var(--muted)}
.faq-layout h2{font-size:40px}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list details:first-child{border-top:1px solid var(--line)}
.faq-list summary{padding:23px 32px 23px 0;position:relative;cursor:pointer;list-style:none;font-size:15px;font-weight:500}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";position:absolute;right:0;top:18px;font-size:23px;color:var(--accent);font-weight:400}
.faq-list details[open] summary:after{content:"−"}
.faq-list details>p{color:var(--muted);font-size:14px;line-height:1.85;padding:0 18px 24px 0}
.budget-layout{display:grid;grid-template-columns:.83fr 1.35fr;gap:80px;align-items:start}
.budget-note .eyebrow{font-size:10px;color:#b3c59b;margin-bottom:25px}
.budget-note h2{font-size:clamp(32px,3.2vw,44px)}
.budget-note>p:not(.eyebrow){font-size:14px;line-height:1.85;color:var(--muted);max-width:345px;margin-top:25px}
.budget-note p a{color:#cedabf;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}
.contact-steps{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:19px;font-size:12px;color:#c1c9b9}
.contact-steps li{display:flex;align-items:center;gap:14px}
.contact-steps li>span:first-child{font-size:10px;color:#a0b08e;flex:none}
.budget-note>p.contact-alternative{margin-top:37px;font-size:12px}
.budget-note .text-link{font-size:13px;margin-top:7px}
.lead-form{display:grid;gap:23px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.form-field{display:flex;flex-direction:column;gap:10px;min-width:0}
.form-field label{font-size:12px;color:#dde4d7;font-weight:500}
.form-field label span{font-size:9px;font-weight:400;color:#97a18d}
.form-field input,.form-field textarea,.form-field select,#briefing-preview{width:100%;border:1px solid #ffffff29;background:#0c0f0d;color:var(--text);padding:14px 15px;border-radius:3px;font-size:14px;line-height:1.65;transition:border-color .2s;min-height:52px;color-scheme:dark}
.form-field input::placeholder,.form-field textarea::placeholder{color:#8e9787;opacity:1}
.form-field select{padding-right:24px}
.form-field textarea,#briefing-preview{resize:vertical}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#b5d881;outline:1px solid #b5d881;outline-offset:2px}
.form-disclaimer{font-size:11px;line-height:1.85;color:#9ca691;max-width:590px}
.form-disclaimer a{text-decoration:underline;text-underline-offset:3px;color:#d0dfbc}
.form-submit{justify-self:start}
.form-submit:disabled{opacity:.65;transform:none;cursor:wait}
.form-consent{display:flex;align-items:flex-start;gap:12px}
.form-consent input{width:18px;height:18px;flex:none;margin:3px 0 0;accent-color:var(--accent)}
.form-consent label{font-size:12px;line-height:1.8;color:#b3bfaa;cursor:pointer}
#form-protection{max-width:100%;min-height:65px}
.form-feedback{font-size:13px;color:#d3eaa6;line-height:1.8}
.form-feedback:empty{display:none}
.briefing-result{border-top:1px solid var(--line);padding-top:25px;display:flex;flex-wrap:wrap;gap:16px}
.briefing-result .button{font-size:12px}
.briefing-result label{flex-basis:100%;margin-top:10px;font-size:12px}
.briefing-result>p{font-size:12px;color:var(--muted)}
.briefing-result>p a{color:var(--text);overflow-wrap:anywhere}
#briefing-preview{font-size:13px}
.project-study{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding-block:60px;border-top:1px solid var(--line);scroll-margin-top:95px}
.project-study:first-child{padding-top:0;border-top:0}
.project-study:last-child{padding-bottom:0}
.study-image{position:relative;border-radius:5px;overflow:hidden;background:#141916}
.study-image img{width:100%;height:auto}
.study-image>span{position:absolute;bottom:13px;left:13px;font-size:9px;background:#090b0cda;padding:5px 10px;color:#dde4d6}
.study-copy .eyebrow{color:#a6b992;font-size:10px;margin-bottom:22px}
.study-copy h2{font-size:clamp(35px,4vw,53px)}
.study-copy p{font-size:14px;line-height:1.85;color:var(--muted);margin-top:12px}
.study-copy .study-intro{font-size:20px;color:#d3dccb;line-height:1.6;letter-spacing:-.02em;margin:20px 0 28px}
.study-copy h3{font-size:12px;letter-spacing:.015em;font-weight:600;margin-top:24px}
.tag-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:26px 0 20px}
.tag-list li{border:1px solid var(--line);border-radius:30px;padding:5px 10px;font-size:10px;color:#afbd9f}
.study-copy .text-link{font-size:12px}
.landscape-study{grid-template-columns:1.3fr 1fr}
.prose{max-width:820px}
.prose h2{font-size:28px;margin-top:45px;margin-bottom:20px}
.prose h2:first-child{margin-top:0}
.prose p{font-size:16px;line-height:1.9;color:var(--muted);margin-top:17px}
.prose a{color:var(--text);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.prose .privacy-note{font-size:12px;border-top:1px solid var(--line);padding-top:25px;margin-top:45px}
@media(max-width:1100px){.page-grid{grid-template-columns:155px 1fr;gap:35px}.page-title{font-size:65px}.page-lead{font-size:16px;max-width:650px}.ecosystem-card{padding:23px}.ecosystem-card-top{font-size:8px}.principles{grid-template-columns:1fr}.principle,.principle+.principle{padding:23px 0;border-left:0;border-bottom:1px solid var(--line)}.principle p{max-width:530px}.budget-layout{gap:45px}.project-study{gap:40px}.study-copy .study-intro{font-size:18px}.solution-detail{gap:45px}}
@media(max-width:850px){.page-hero{padding-block:59px}.page-title{font-size:56px}.page-grid{grid-template-columns:1fr;gap:30px}.page-section-label{padding-top:0}.page-heading{font-size:39px}.page-copy{font-size:15px}.ecosystem-card h3{font-size:31px}.principles{grid-template-columns:repeat(3,1fr)}.principle,.principle+.principle{padding:24px 18px 0;border-bottom:0}.principle:first-child{padding-left:0}.principle+.principle{border-left:1px solid var(--line)}.principle h3{font-size:21px}.principle p{font-size:13px}.unit-visual{opacity:.2;right:-100px}.unit-hero .page-lead{max-width:560px}.page-cta{gap:30px}.page-cta h2{font-size:35px}.page-cta .button{font-size:12px;padding-inline:18px;gap:20px}.solution-detail{grid-template-columns:.65fr 2fr;gap:35px}.solution-detail h2{font-size:34px}.solution-detail p{font-size:15px}.solution-id>span{font-size:8px}.method-list>article{grid-template-columns:90px 1fr;gap:35px}.method-number{font-size:52px}.faq-layout{grid-template-columns:1fr;gap:35px}.faq-layout h2{font-size:37px}.budget-layout{grid-template-columns:1fr;gap:40px}.budget-note h2 br{display:none}.budget-note h2{max-width:560px}.budget-note>p:not(.eyebrow){max-width:560px}.contact-steps{display:flex;gap:23px;max-width:640px;font-size:11px}.contact-steps li{align-items:flex-start}.budget-note>p.contact-alternative{margin-top:22px}.project-study{gap:30px}.study-copy .study-intro{font-size:16px}.study-copy p{font-size:13px}.study-copy .text-link{font-size:11px}.landscape-study{grid-template-columns:1fr}.landscape-study .study-image{max-width:600px}}
@media(max-width:600px){.page-hero{padding-block:46px}.page-kicker{font-size:9px;letter-spacing:.08em;margin-bottom:23px}.page-title{font-size:clamp(36px,9.1vw,52px);line-height:1.12;letter-spacing:-.04em}.page-title br{display:none}.page-lead{font-size:14px;line-height:1.85;margin-top:23px}.page-section{padding-block:48px}.page-grid{gap:27px}.page-section-label{font-size:9px;gap:10px}.page-heading{font-size:31px;line-height:1.22;margin-bottom:21px}.page-copy{font-size:14px}.manifesto>p{font-size:25px;line-height:1.55}.manifesto small{font-size:8px;letter-spacing:.04em}.timeline{gap:23px;margin-top:28px}.timeline-item h3{font-size:19px;line-height:1.35}.timeline-item p{font-size:12px;line-height:1.8}.timeline-index{font-size:8px;letter-spacing:0}.ecosystem-grid{grid-template-columns:1fr;margin-top:27px}.ecosystem-card{padding:24px}.ecosystem-card-top{font-size:9px}.ecosystem-card h3{font-size:30px;max-width:290px}.ecosystem-card h3 br{display:none}.ecosystem-card p{font-size:14px;margin-top:16px;max-width:none}.ecosystem-card-link{font-size:12px;margin-top:21px}.principles{grid-template-columns:1fr;margin-top:27px}.principle,.principle+.principle{padding:21px 0;border-left:0;border-bottom:1px solid var(--line)}.principle h3{font-size:24px}.principle p{font-size:14px;margin-top:12px}.principle-number{font-size:9px;margin-bottom:10px}.unit-strip{font-size:9px;gap:8px;line-height:1.8}.unit-website{font-size:11px;gap:10px}.unit-visual{right:-160px;top:0}.deploy-status{font-size:10px}.deploy-roadmap{grid-template-columns:1fr;gap:27px}.roadmap-step h3{font-size:25px;margin-top:16px}.roadmap-step p{font-size:14px;margin-top:12px}.page-cta{display:block}.page-cta h2{font-size:33px}.page-cta p:not(.eyebrow){font-size:14px;margin-top:20px}.page-cta .button{margin-top:25px}.page-cta .eyebrow{font-size:9px;margin-bottom:21px}.solution-detail{grid-template-columns:1fr;gap:24px;padding-block:39px;scroll-margin-top:98px}.solution-id{display:flex;align-items:center;justify-content:space-between}.solution-id>span{font-size:9px}.solution-id .service-symbol{margin:0;transform:scale(.65);transform-origin:right center;height:42px}.solution-detail h2{font-size:31px}.solution-detail p{font-size:14px;margin-top:22px}.check-list{font-size:13px;gap:13px}.solution-detail .text-link{font-size:12px}.method-list>article{grid-template-columns:1fr;gap:20px;padding-block:37px}.method-number{font-size:40px}.method-list h2{font-size:31px}.method-list .eyebrow{font-size:9px;margin-bottom:17px}.method-list p:not(.eyebrow){font-size:14px;margin-top:20px}.method-delivery{font-size:11px;line-height:1.8;margin-top:22px}.faq-layout{gap:28px}.faq-layout h2{font-size:32px}.faq-layout .eyebrow{font-size:9px;margin-bottom:19px}.faq-list summary{font-size:13px;padding-block:22px}.faq-list details>p{font-size:13px}.budget-note .eyebrow{font-size:9px}.budget-note h2{font-size:31px;line-height:1.2}.budget-note h2 br{display:inline}.budget-note p a{font-size:12px}.budget-note>p:not(.eyebrow){font-size:13px;margin-top:21px}.contact-steps{flex-direction:column;gap:14px;font-size:12px;margin-top:25px}.form-grid{grid-template-columns:1fr;gap:23px}.form-field label{font-size:12px}.form-field input,.form-field textarea,.form-field select{font-size:16px;min-height:52px;padding-inline:12px}.form-field label span{font-size:9px}.form-disclaimer{font-size:10px;line-height:1.9}.form-submit{width:100%;font-size:13px}.form-feedback{font-size:12px}.briefing-result .button{width:100%}.project-study{grid-template-columns:1fr;gap:28px;padding-block:42px}.study-image{max-width:420px}.study-copy h2{font-size:37px}.study-copy .eyebrow{font-size:9px;margin-bottom:18px}.study-copy .study-intro{font-size:18px;margin-top:16px;margin-bottom:25px}.study-copy p{font-size:14px}.study-copy h3{font-size:12px}.study-copy .text-link{font-size:12px}.prose h2{font-size:25px;margin-top:35px}.prose p{font-size:14px}.prose .privacy-note{font-size:11px}}

.space-top{margin-top:30px}.space-top-lg{margin-top:48px}.page-title-offset{margin-top:28px}
.error-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:38px}
@media(max-width:600px){.error-actions .button{width:100%;justify-content:space-between}}
/* Mobile legibility and touch: meaningful text >= 10-12px, tap targets >= 24px (WCAG 2.5.8), 44px where it helps. */
@media(max-width:600px){
.header-cta{font-size:11px}
.eyebrow,.page-kicker,.section-heading .eyebrow,.closing-grid .eyebrow,.work-teaser-copy .eyebrow{font-size:10px}
.unit-position{font-size:8.5px;letter-spacing:.04em}
.unit-link{font-size:11px}
.service-card-foot,.work-index-type{font-size:10.5px}
.art-caption{font-size:11px}
.closing-action>span{font-size:11px}
.tag-list li{font-size:11px}
.page-section-label,.timeline-index,.principle-number,.unit-strip{font-size:10px}
.deploy-status{font-size:11px}
blockquote small,figure small{font-size:10px}
.form-disclaimer,.form-disclaimer a{font-size:12px;line-height:1.7}
.form-consent label{font-size:13px}
.footer-column h2{font-size:11px}
.footer-column a{font-size:13px;min-height:36px;min-width:24px;display:inline-flex;align-items:center}
.footer-column p{font-size:12px}
.footer-email{display:inline-flex;align-items:center;min-height:44px;font-size:14px;margin-top:8px}
.small-status{font-size:9px}
.footer-bottom{font-size:11px;padding-block:14px 22px}
.footer-bottom a{display:inline-flex;align-items:center;min-height:44px;padding-inline:2px}
}
@media(max-width:600px){
.eyebrow.eyebrow.eyebrow,.page-kicker.page-kicker{font-size:10px}
.service-card-top>span,.solution-id>span,.ecosystem-card-top>span,.study-image>span,.hero-baseline>span,.page-section .container>small,.container>blockquote+small,.unit-position.unit-position{font-size:10px}
.form-field label span,label>span{font-size:11px}
.form-consent input{width:24px;height:24px;margin-top:1px}
.small-status.small-status,.roadmap-step>span{font-size:10px}
}
@media(max-width:360px){.header-cta{font-size:10px}.unit-position.unit-position{font-size:9px;letter-spacing:.02em}}
