/* V3: one idea per section. Real service language, no invented product interface. */
.home-page .hero{display:grid;grid-template-columns:1.45fr 1fr;column-gap:80px;row-gap:56px;background:var(--paper);border:0;border-radius:20px;margin-top:24px;padding:68px 68px 30px;align-items:center}
.home-page .hero h1{font-size:clamp(48px,5.25vw,78px);line-height:1.06;font-weight:500;letter-spacing:-.052em;text-wrap:balance;max-width:770px}
.home-page .hero-copy .eyebrow{font-size:15px;margin-bottom:31px;font-weight:500}
.home-page .hero .actions{margin-top:36px;gap:26px}
.home-page .hero-explanation{padding-top:36px;max-width:460px}
.home-page .hero-explanation p{font-size:18px;line-height:1.75;color:#3e595b}
.home-page .hero-explanation .hero-lead{font-size:23px;line-height:1.55;margin:0;color:var(--ink);font-weight:500}
.home-page .hero-service{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;border-top:1px solid #c7d2c8;padding-top:25px;font-size:14px;color:#486361}
.home-page .button{border-radius:8px;box-shadow:none;font-size:16px;font-weight:600;padding-inline:24px}
.home-page .quiet-link{font-size:15px;border-bottom:1px solid #91a199;padding-block:4px}
.home-page .section-heading h2{font-size:48px;line-height:1.16;letter-spacing:-.04em;font-weight:500}
.home-page .section-heading>p{font-size:18px;line-height:1.7;max-width:420px}
.home-page .cases{background:#fffdf9;padding-block:86px 68px}
.case-stories{display:grid;gap:12px;margin-top:40px}
.case-story{background:#f0f4ef;border:1px solid #d8e2d7;border-radius:14px;overflow:hidden}
.case-story summary{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;padding:32px 82px 32px 36px;list-style:none;cursor:pointer}
.case-story summary::-webkit-details-marker{display:none}
.case-story summary h3{font-size:28px;line-height:1.22;letter-spacing:-.025em;font-weight:600;text-wrap:pretty}
.case-teaser{font-size:16px;line-height:1.55;color:#47605f}
.disclosure-mark{position:absolute;right:30px;top:50%;width:28px;height:28px;transform:translateY(-50%);border:1px solid #8ca696;border-radius:50%}
.disclosure-mark:before,.disclosure-mark:after{content:'';position:absolute;left:7px;right:7px;top:12px;border-top:1px solid var(--ink)}
.disclosure-mark:after{transform:rotate(90deg);transition:transform .2s}
.case-story[open] .disclosure-mark:after{transform:rotate(0)}
.case-story[open]{background:#e5eee4}
.case-story summary:hover{background:#dae6d933}
.story-content{display:grid;grid-template-columns:1fr 1fr;gap:56px;padding:0 36px 36px}
.story-content>div{border-top:1px solid #bdcdbf;padding-top:25px}
.story-content h4{font-size:17px;letter-spacing:0;margin-bottom:16px;line-height:1.4;font-weight:600}
.story-content p{font-size:17px;line-height:1.75;color:#3e5756}
.story-content .text-link{font-size:15px;margin-top:25px;font-weight:600}
.home-page .example-note{font-size:13px;max-width:920px;line-height:1.7}
.home-page .process{padding-block:20px 78px}
.home-page .process>.container{background:var(--paper);border-radius:20px;padding:48px 48px 36px}
.home-page .process .section-heading{align-items:flex-start;gap:45px;margin-bottom:40px}
.home-page .process .section-heading>div{flex:1.15}.home-page .process .section-heading>p{flex:1;max-width:420px}
.home-page .process-grid{grid-template-columns:1fr;gap:0;margin:0}
.home-page .process-grid article{display:grid;grid-template-columns:44px .85fr 1fr;gap:30px;padding:28px 0;align-items:start;border:0;border-top:1px solid #cbd3c7;border-radius:0;background:none}
.home-page .step-number{font-size:16px;margin:3px 0 0;color:#527166}
.home-page .process-grid h3{font-size:25px;line-height:1.25;max-width:330px;letter-spacing:-.025em;font-weight:500;text-wrap:pretty}
.home-page .process-grid p{font-size:17px;line-height:1.7;margin:0;max-width:530px}
.home-page .team{grid-template-columns:.8fr 1.2fr;border:0;background:#edf3ed;border-radius:20px;margin-bottom:70px}
.home-page .team-copy{padding:48px 52px}
.home-page .team-copy h2{font-size:45px;font-weight:500;line-height:1.12}
.home-page .team-photo img{min-height:620px;object-position:54% 60%}
.home-page .team-copy>p:not(.eyebrow){font-size:17px;line-height:1.7}
.home-page .elephant-note{font-size:13px;border-color:#c4d2c5;margin-top:28px}
.home-page .funding{padding:40px 48px;background:#f6f2e9;border:1px solid #e1e2d5;border-radius:18px}
.home-page .funding h2{font-size:38px;font-weight:500}
.home-page .faq{padding-block:74px}.home-page .faq h2{font-size:42px;font-weight:500}
.home-page .contact{background:#dfeade}.home-page .contact h2{font-weight:500;font-size:46px}.home-page .contact p{font-size:18px;line-height:1.7}
.home-page .contact-form{border-radius:14px;border-color:#c3d2c3}.home-page .contact-form h3{font-weight:500}
@media(max-width:1100px){.home-page .hero{grid-template-columns:1.2fr 1fr;padding:48px 42px 28px;gap:42px}.home-page .hero h1{font-size:61px}.home-page .hero-explanation{padding-top:30px}.home-page .hero-explanation .hero-lead{font-size:21px}.home-page .hero-explanation p{font-size:17px}.home-page .hero-service{font-size:13px}.home-page .team-copy{padding:35px}.home-page .team-copy h2{font-size:38px}.home-page .team-photo img{min-height:710px}}
@media(max-width:900px){.home-page .hero{grid-template-columns:1fr;gap:30px;padding:42px 38px 26px}.home-page .hero h1{font-size:65px;max-width:700px;text-wrap:balance}.home-page .hero-explanation{display:grid;grid-template-columns:1fr 1fr;max-width:none;gap:30px;padding:0}.home-page .hero-explanation p+p{margin:0}.home-page .hero-explanation .hero-lead{font-size:19px}.home-page .hero-service{gap:25px;line-height:1.5}.home-page .section-heading h2{font-size:42px}.case-story summary{grid-template-columns:1fr;gap:12px;padding:27px 68px 27px 28px}.case-story summary h3{font-size:27px}.story-content{gap:30px;padding:0 28px 28px}.story-content p{font-size:16px}.home-page .process>.container{padding:38px 32px 22px}.home-page .process-grid article{grid-template-columns:30px .9fr 1fr;gap:20px}.home-page .process-grid h3{font-size:23px}.home-page .process-grid p{font-size:16px}.home-page .team{grid-template-columns:.8fr 1.2fr}.home-page .team-photo img{min-height:800px}.home-page .team-copy{padding:35px 28px}.home-page .team-copy h2{font-size:35px}}
@media(max-width:620px){.home-page .hero{width:calc(100% - 24px);padding:34px 24px 24px;margin-top:12px;border-radius:16px;gap:30px}.home-page .hero h1{font-size:47px;line-height:1.09;letter-spacing:-.045em}.home-page .hero-copy .eyebrow{font-size:13px;line-height:1.5;margin-bottom:22px;max-width:240px}.home-page .hero .actions{margin-top:28px;gap:18px}.home-page .hero .button{font-size:14px;padding:14px 19px}.home-page .quiet-link{font-size:14px}.home-page .hero-explanation{display:block}.home-page .hero-explanation .hero-lead{font-size:18px;line-height:1.65}.home-page .hero-explanation p{font-size:16px;line-height:1.7}.home-page .hero-explanation p+p{margin-top:18px}.home-page .hero-service{display:grid;grid-template-columns:1fr;gap:10px;padding-top:20px;font-size:13px}.home-page .cases{padding-block:56px}.home-page .section-heading h2{font-size:36px}.home-page .section-heading>p{font-size:17px;line-height:1.7}.case-stories{margin-top:26px;gap:12px}.case-story{border-radius:12px}.case-story summary{padding:25px 57px 25px 22px;gap:13px}.case-story summary h3{font-size:24px;line-height:1.25}.case-teaser{font-size:15px}.disclosure-mark{right:18px;width:24px;height:24px}.disclosure-mark:before,.disclosure-mark:after{left:6px;right:6px;top:10px}.story-content{grid-template-columns:1fr;gap:25px;padding:0 22px 27px}.story-content h4{font-size:16px;margin-bottom:12px}.story-content>div{padding-top:21px}.story-content p{font-size:16px;line-height:1.7}.home-page .example-note{font-size:12px}.home-page .process{padding-block:0 56px}.home-page .process>.container{padding:30px 24px 16px;border-radius:16px}.home-page .process .section-heading{margin-bottom:30px}.home-page .process-grid article{grid-template-columns:24px 1fr;gap:16px 12px;padding-block:25px}.home-page .process-grid h3{font-size:23px}.home-page .process-grid p{grid-column:2;font-size:16px;line-height:1.7}.home-page .step-number{font-size:13px;margin-top:5px}.home-page .team{grid-template-columns:1fr;border-radius:16px;margin-bottom:56px}.home-page .team-photo img{min-height:0;height:360px;object-position:50% 55%}.home-page .team-copy{padding:32px 25px}.home-page .team-copy h2{font-size:35px}.home-page .team-copy>p:not(.eyebrow){font-size:16px}.home-page .funding{padding:30px 26px;border-radius:16px}.home-page .funding h2{font-size:33px}.home-page .faq{padding-block:56px}.home-page .faq h2{font-size:35px}.home-page .contact h2{font-size:35px}.home-page .contact p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.disclosure-mark:after{transition:none}}
/* A single document-to-task sketch; not a screenshot of a promised product. */
.example-flow{grid-column:1/-1;border-top:1px solid #bdcdbf;padding-top:25px;margin:0}
.example-flow figcaption{font-size:17px;font-weight:600;margin-bottom:27px;color:var(--ink)}
.example-flow ol{padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;margin:0}
.example-flow li{display:flex;align-items:center;gap:17px;position:relative;padding-right:25px}
.example-flow li:not(:last-child):after{content:'→';position:absolute;right:-9px;top:12px;font-size:24px;color:#65816e}
.example-flow li div>span{display:block;font-size:12px;color:#4b6263;margin-bottom:5px}.example-flow strong{display:block;font-size:17px;line-height:1.3;font-weight:600}
.flow-document{position:relative;width:36px;height:46px;background:#fffdf9;border:1.5px solid #527465;flex:none;border-radius:2px}
.flow-document:after{content:'';position:absolute;left:7px;right:7px;top:12px;height:2px;background:#afc2b2;box-shadow:0 7px #afc2b2,0 14px #afc2b2}
.flow-folder{position:relative;width:41px;height:32px;background:#c5dbca;border:1.5px solid #527465;flex:none;border-radius:3px}
.flow-folder:before{content:'';position:absolute;width:20px;height:6px;top:-7px;left:-1.5px;border:1.5px solid #527465;border-bottom:0;border-radius:3px 3px 0 0;background:#c5dbca}
.flow-task{width:37px;height:37px;border:1.5px solid #527465;display:grid;place-items:center;background:#fffdf9;border-radius:50%;font-size:21px;flex:none}
.example-flow>p{font-size:13px;line-height:1.65;margin-top:25px;max-width:850px}
@media(max-width:900px){.example-flow ol{grid-template-columns:1fr;gap:27px}.example-flow li{padding:0}.example-flow li:not(:last-child):after{content:'↓';left:12px;right:auto;top:41px;font-size:20px}.example-flow li div>span{font-size:12px}.example-flow strong{font-size:17px}}
