/* Expanded Mobbin study: original illustrated service system and clearer inquiry journey. */
:root { --tint:#e6ece5; --blue:#d9e8ec; --peach:#f0d4be; }
.nav-wrap { min-height:82px; }
.hero-billboard { background:var(--green); color:var(--paper); width:min(1340px,calc(100% - 48px)); padding:48px 52px; margin-top:28px; border-radius:12px; gap:48px; grid-template-columns:1.05fr 1fr; }
.hero-billboard h1 { font-size:clamp(58px,5.5vw,80px); line-height:1.04; margin-bottom:22px; }
.hero-billboard h1 em { color:var(--lime); }
.brand-tagline { font-weight:600; line-height:1.45; text-wrap:pretty; }
.hero-billboard .hero-promise { display:block; margin-top:18px; font-size:.58em; line-height:1.18; letter-spacing:-.025em; }
footer .brand-tagline { max-width:360px; }
.hero-billboard .eyebrow { color:var(--lime); margin-bottom:24px; }
.hero-billboard .lead { color:#e2e9df; max-width:480px; font-size:18px; margin-bottom:18px; }
.hero-billboard .location { color:#d4dfd0; margin-bottom:25px; }
.hero-billboard .button { background:var(--lime); color:var(--green); border-color:var(--lime); }
.hero-billboard .button.secondary { background:transparent; color:var(--paper); border-color:#adbeae; }
.hero-billboard :focus-visible,.local-band :focus-visible { outline-color:var(--lime); }
.workday-scene { background:var(--blue); color:var(--green); padding:24px; border-radius:7px; transform:rotate(1deg); }
.scene-heading { display:flex; align-items:center; justify-content:space-between; font-size:10px; letter-spacing:.14em; gap:12px; }
.scene-heading>span:last-child { font-size:26px; }
.service-scene { width:100%; display:block; height:auto; }
.workday-scene>.service-scene { margin-block:4px; }
.scene-tags { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:18px; }
.scene-tags span { background:#fbf9f1; padding:6px 9px; border:1px solid #6b8987; border-radius:4px; font-size:11px; }
.scene-caption { border-top:1px solid #78958e; padding-top:17px; margin-bottom:0; font:24px/1.15 var(--serif); letter-spacing:-.025em; }
.scene-caption strong { font-weight:400; }
.value-strip { border-top:0; padding-block:23px; }
.section { padding-block:80px; }
.need-rows>a { padding-block:24px; }
.need-rows>a:nth-child(even) { background:#ecede4; }
.need-rows>a:hover { background:#dce8db; }
.service-grid { gap:26px; }
.service-card { padding:0 24px 24px; overflow:hidden; background:var(--paper); border-color:#b8c7b6; }
.service-card-art { margin:0 -24px 23px; padding:12px 16px 17px; background:#d9e8ec; border-bottom:1px solid #b8c7b6; }
.service-card:nth-child(2n) .service-card-art { background:#e7e9d5; }
.service-card:nth-child(3n) .service-card-art { background:#f0d4be; }
.service-card-art .mono { display:block; font-size:10px; color:var(--green); margin-left:7px; }
.service-card p { font-size:15px; }
.service-card .text-link { padding-top:15px; }
.service-illustration { padding:24px 32px 30px; border:1px solid #b6c7bd; min-height:0; background:var(--blue); }
.service-illustration .service-scene { max-height:310px; }
.service-illustration:before,.service-illustration:after { content:none; }
.service-illustration p { margin:12px 0 18px; font-size:29px; }
.guide-art,.art-1,.art-2 { height:auto; background:var(--blue); color:var(--green); padding:0 16px 25px; }
.guide-art.art-1 { background:var(--peach); }
.guide-art.art-2 { background:#e3e9cc; }
.guide-art .service-scene { aspect-ratio:560/300; }
.guide-art b { bottom:14px; }
.page-hero { position:relative; border-bottom:1px solid var(--line); margin-bottom:40px; padding-bottom:42px; }
.page-hero:after { content:''; position:absolute; right:0; top:65px; width:100px; height:100px; background:linear-gradient(#bccdbb,#bccdbb) center/100% 8px no-repeat,linear-gradient(#bccdbb,#bccdbb) center/8px 100% no-repeat; opacity:.7; pointer-events:none; z-index:-1; }
.page-hero .lead { max-width:760px; }
.page-hero.about-hero:after { content:none; }
.process-list article { gap:35px; }
.process-list .deliverable { border-radius:6px; border-left:3px solid #738f74; }
.about-mark { background:#d9e8ec; color:var(--green); border:1px solid #aac1bd; }

.article { max-width:1050px; }
.article-toc { border:1px solid #becbbb; background:#e8ece1; padding:23px 28px; border-radius:7px; max-width:740px; }
.article-toc .eyebrow { margin-bottom:12px; }
.article-toc a { display:flex; gap:18px; font-size:15px; min-height:44px; align-items:center; text-decoration:none; }
.article-toc a:hover { text-decoration:underline; }
.article-toc a span { font:12px Consolas,monospace; }
.article-body section { scroll-margin-top:110px; }
.contact-layout { gap:70px; padding-block:55px 85px; }
.contact-next { border-top:1px solid var(--line); margin-block:32px; padding-top:24px; }
.contact-next ol { list-style:none; padding:0; counter-reset:next; }
.contact-next li { position:relative; padding-left:43px; counter-increment:next; margin-bottom:22px; }
.contact-next li:before { content:counter(next,decimal-leading-zero); position:absolute; left:0; top:0; color:var(--green); border:1px solid #9caf9b; border-radius:50%; width:29px; height:29px; display:grid; place-items:center; font:11px Consolas,monospace; }
.contact-next strong,.contact-next span { display:block; }
.contact-next strong { color:var(--ink); margin-bottom:4px; font-weight:600; }
.context-pill { border-left:3px solid var(--green); background:var(--tint); font-size:13px; padding:10px 12px; margin-block:12px; }
.contact-layout>*,.form-panel { min-width:0; }
.inquiry-actions { align-items:stretch; }
#inquiry-review { scroll-margin-top:110px; }
#inquiry-review a { overflow-wrap:anywhere; }
#handoff-status { font-size:13px; margin:18px 0; }
#handoff-status:empty { display:none; }
#inquiry-fallback { margin-top:24px; border-top:1px solid var(--line); }
#inquiry-fallback summary { font-size:14px; }
#inquiry-fallback .actions { margin-block:16px; }
#inquiry-email-draft { font-size:14px; line-height:1.55; white-space:pre-wrap; }
@media (max-width:600px) {
  .inquiry-actions,.inquiry-actions>.button { width:100%; }
  #inquiry-email-draft { font-size:16px; }
}

.study-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.study-grid article { padding:25px; background:var(--tint); border-radius:6px; }
.study-grid article p { font-size:14px; }
.study-grid article .eyebrow { font-size:10px; margin-bottom:10px; }
.study-grid article p:last-child { margin-bottom:0; }
.cta { background:#e1ecc2; border:1px solid #b8c79d; }
.cta:after { content:''; width:150px; height:150px; bottom:-30px; background:linear-gradient(#b8ce88,#b8ce88) center/100% 12px no-repeat,linear-gradient(#b8ce88,#b8ce88) center/12px 100% no-repeat; }
@media (max-width:1100px) {
  .hero-billboard { gap:30px; padding:38px; }
  .hero-billboard h1 { font-size:63px; }
  .hero-billboard .actions { align-items:stretch; }
  .service-card { padding-inline:20px; }
  .service-card-art { margin-inline:-20px; }
}
@media (max-width:900px) {
  .nav-wrap { min-height:74px; }
  .hero-billboard { grid-template-columns:1fr; width:calc(100% - 40px); padding:38px; gap:32px; margin-top:20px; }
  .hero-billboard h1 { font-size:clamp(53px,9vw,73px); max-width:660px; }
  .hero-billboard .lead { max-width:620px; }
  .workday-scene { max-width:620px; width:100%; transform:none; }
  .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .contact-layout { gap:38px; }
  .service-illustration .service-scene { max-height:270px; }
}
@media (max-width:600px) {
  .hero-billboard { width:calc(100% - 24px); padding:29px 20px 20px; margin-top:12px; border-radius:8px; }
  .hero-billboard h1 { font-size:clamp(47px,11.3vw,64px); margin-bottom:21px; }
  .hero-billboard .eyebrow { font-size:9px; letter-spacing:.1em; }
  .hero-billboard .lead { font-size:17px; }
  .hero-billboard .actions { flex-direction:column; }
  .hero-billboard .button { width:100%; }
  .workday-scene { padding:16px; }
  .scene-heading { font-size:8px; }
  .scene-tags span { font-size:10px; padding:5px 7px; }
  .scene-caption { font-size:23px; }
  .section { padding-block:56px; }
  .service-grid,.study-grid { grid-template-columns:1fr; }
  .service-card-art>.service-scene { max-height:210px; }
  .page-hero { padding-top:40px; margin-bottom:28px; }
  .page-hero:after { width:65px; height:65px; top:35px; }
  .service-illustration { padding:16px 20px 25px; }
  .guide-art .service-scene { max-height:220px; }
  .article-toc { padding:18px; }
  .contact-layout { padding-block:40px 60px; }
}
@media (prefers-reduced-motion:reduce) { .workday-scene { transform:none; } }
@media print {
  .hero-billboard { background:white; color:black; }
  .hero-billboard h1 em,.hero-billboard p,.hero-billboard .eyebrow { color:black; }
  .article-toc { break-inside:avoid; }
}

/* The RGBA logo has transparent surroundings; the hat remains white inside its navy disk. */
.brand-original { gap:10px; padding:0; background:transparent; border-radius:0; flex-shrink:0; }
.brand-crop { display:block; position:relative; overflow:hidden; flex:none; }
.brand-crop img { position:absolute; display:block; height:auto; max-width:none; }
.brand-symbol { width:54px; aspect-ratio:536/532; }
.brand-symbol img { width:247.388060%; left:-73.694030%; top:-40.601504%; }
.brand-wordmark { width:172px; aspect-ratio:885/191; }
.brand-wordmark img { width:149.830508%; left:-24.858757%; top:-407.853403%; }
.brand-full { width:198px; max-width:100%; aspect-ratio:885/754; }
.brand-full img { width:149.830508%; left:-24.858757%; top:-28.647215%; }
.about-mark { background:transparent; flex-direction:column; gap:20px; min-width:0; color:var(--green); }
.about-mark .brand-full { width:250px; }
@media (max-width:650px) { .brand-original { gap:8px; } .brand-symbol { width:42px; } .brand-wordmark { width:136px; } }
@media (max-width:380px) { .site-header .brand-symbol { width:36px; } .site-header .brand-wordmark { width:110px; } }

/* A shorter path from the promise to scope, useful guidance and an introduction. */
.scope-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.scope-grid article { border-top:2px solid var(--green); padding-top:24px; min-width:0; }
.scope-grid .icon { width:32px; height:32px; color:var(--green); margin-bottom:18px; }
.scope-grid h3 { font-size:25px; line-height:1.2; margin:0 0 14px; }
.scope-grid p { font-size:16px; color:var(--muted); }
.scope-grid a { display:block; width:fit-content; padding-block:10px; font-size:15px; text-underline-offset:4px; }
.scope-boundary { margin:28px 0 0; padding:20px 24px; background:var(--tint); border-radius:6px; font-size:15px; }
.scope-boundary strong { color:var(--green); }
.switching-panel { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.switching-panel h2 { margin-bottom:22px; }
.switching-panel .button { margin-top:10px; }
.approach-link { display:block; width:fit-content; padding-block:18px; }
.handover-steps { margin:0; padding-left:30px; }
.handover-steps li { padding:0 0 22px 12px; margin-bottom:22px; border-bottom:1px solid #bccbc0; }
.handover-steps li:last-child { margin-bottom:0; padding-bottom:0; border:0; }
.handover-steps li::marker { font-family:var(--mono); font-size:15px; color:var(--green); }
.handover-steps h3 { font-family:var(--sans); font-size:19px; margin:0 0 9px; }
.handover-steps p { font-size:16px; margin:0; }
.reading-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:40px; }
.featured-reading { padding:30px; background:var(--blue); border-radius:8px; }
.reading-symbol { display:grid; place-items:center; width:58px; height:58px; border-radius:50%; background:#f6faf9; margin-bottom:24px; }
.reading-symbol .icon { width:30px; height:30px; }
.reading-grid h3 { font-size:30px; line-height:1.15; margin:12px 0 18px; }
.reading-grid h3 a { text-decoration:none; }
.reading-grid h3 a:hover { text-decoration:underline; text-underline-offset:4px; }
.reading-grid p { font-size:16px; }
.reading-grid .eyebrow { font-size:11px; }
.reading-links article { padding:20px 0; border-top:1px solid var(--line); }
.reading-links article:last-child { padding-bottom:0; }
.reading-links h3 { font-size:27px; }
.reading-links p:last-child { margin-bottom:0; }
.service-card-art>.service-scene { max-height:140px; }
.guide-art { min-height:0; }
.guide-art .service-scene { max-height:155px; }
.contact-layout { grid-template-areas:'intro form' 'follow form'; grid-template-rows:auto 1fr; column-gap:64px; row-gap:0; }
.contact-intro { grid-area:intro; min-width:0; }


.contact-layout>.form-panel { grid-area:form; min-width:0; }
.contact-followup { grid-area:follow; min-width:0; }
.contact-next { margin-top:24px; }
.contact-next ol { list-style:decimal; padding-left:24px; counter-reset:none; }
.contact-next li { padding-left:10px; counter-increment:none; }
.contact-next li::before { content:none; }
.contact-next li::marker { font-family:var(--mono); color:var(--green); }
.contact-followup>a { overflow-wrap:anywhere; }
.resource-tools { grid-template-columns:2fr 1fr auto; align-items:end; }
.resource-tools button { margin-bottom:0; }
.finder-escape { margin:22px 0 0; font-size:15px; }
.finder-escape a { text-underline-offset:3px; }
.guide-checklist { padding:24px; border:1px solid var(--line); border-radius:6px; background:var(--tint); }
.guide-checklist ul { list-style:none; padding:0; margin:16px 0 0; }
.guide-checklist li+li { border-top:1px solid #c3cec6; }
.guide-checklist label { display:flex; align-items:flex-start; gap:14px; padding:14px 0; line-height:1.5; cursor:pointer; }
.guide-checklist input { flex:none; width:21px; height:21px; min-height:0; padding:0; margin:2px 0 0; accent-color:#163e37; }
.guide-checklist input:checked+span { text-decoration:line-through; }
.print-only,.print-notes { display:none; }
.notes>section>details { margin-top:24px; }
.notes>section>details>summary { padding:16px; border:1px solid var(--line); border-radius:6px; cursor:pointer; }
.notes>section>details[open]>.study-grid { margin-top:24px; }
@media (max-width:900px) {
  .scope-grid { gap:22px; }
  .scope-grid h3 { font-size:23px; }
  .switching-panel { gap:40px; }
  .reading-grid { gap:24px; }
  .contact-layout { grid-template-columns:1fr; grid-template-areas:'intro' 'form' 'follow'; gap:28px; }
  .contact-intro .lead { max-width:620px; margin-bottom:0; }
  .contact-layout>.form-panel,.contact-followup { width:100%; max-width:740px; }
  .contact-next { margin-top:0; }
  .resource-tools { grid-template-columns:2fr 1fr; }
  .resource-tools button { justify-self:start; }
}
@media (max-width:600px) {
  .scope-grid,.switching-panel,.reading-grid { grid-template-columns:1fr; }
  .scope-grid { gap:24px; }
  .scope-grid article { padding-top:18px; }
  .scope-grid .icon { float:left; width:26px; height:26px; margin:0 12px 10px 0; }
  .scope-grid h3 { font-size:23px; margin:0 0 12px; min-height:30px; }
  .scope-grid p { clear:both; margin-bottom:10px; }
  .scope-grid a { padding-block:11px; }
  .scope-boundary { padding:18px; }
  .switching-panel { gap:28px; }
  .handover-steps { padding-left:25px; }
  .handover-steps li { padding-left:7px; padding-bottom:18px; margin-bottom:18px; }
  .featured-reading { padding:24px; }
  .reading-symbol { width:46px; height:46px; margin-bottom:18px; }
  .reading-grid h3 { font-size:27px; }
  .reading-links h3 { font-size:25px; }
  .reading-links article { padding-block:24px; }
  .service-card-art { display:flex; align-items:center; gap:18px; padding:12px 18px; margin-bottom:20px; }
  .service-card-art>.service-scene { width:110px; height:90px; flex:none; }
  .service-card-art .mono { margin:0; font-size:10px; }
  .guide-art .service-scene { max-height:120px; }
  .contact-layout { padding-top:30px; gap:24px; }
  .contact-layout h1 { font-size:clamp(43px,11vw,58px); margin-bottom:16px; }
  .contact-intro .lead { font-size:18px; }
  .contact-layout .form-panel h2 { font-size:28px; margin-bottom:14px; }
  .resource-tools { grid-template-columns:1fr; }
  .resource-tools button { width:100%; }
  .guide-checklist { padding:18px; }
}
@media print {
  .article-toc { display:none; }
  .guide-checklist { background:white; border-color:#555; break-before:page; break-inside:avoid; }
  .guide-checklist .small { display:none; }
  .guide-checklist input { appearance:auto; width:14pt; height:14pt; }
  .print-only { display:block; }
  .print-notes { display:block; }
  .print-notes span { display:block; height:30pt; border-bottom:1px solid #999; }
}
