/* Narrative additions: blue and white, open editorial rows. */
.hero h1{font-size:clamp(2rem,3.4vw,3.45rem);line-height:1.38;letter-spacing:-.04em}
.hero-description{max-width:39rem;font-size:1.0625rem}
.hero-benefits{flex-wrap:wrap;gap:12px 18px;font-size:.875rem}
.hero-boundary{font-size:.875rem;color:var(--muted);margin-top:20px;max-width:36rem}
.desktop-nav{gap:20px;font-size:.875rem}
.diagnosis-heading{border-top:1px solid var(--line);margin-top:52px;padding-top:38px}
.diagnosis-heading h3,.offer-heading h3,.delivery-detail>h3{font-size:1.5rem}
.diagnosis-heading>p,.offer-heading>p{color:var(--muted);margin-top:10px}
.diagnosis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;margin-top:20px}
.diagnosis-grid article{padding:24px 0;border-bottom:1px solid var(--line)}
.diagnosis-index{font-size:.875rem;color:var(--blue);font-weight:600}
.diagnosis-grid h3{margin:10px 0;font-size:1.25rem}
.diagnosis-grid p,.offer-grid p,.monthly-grid p,.cooperation-flow p{font-size:1rem;color:var(--muted);line-height:1.8}
.service-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.service-flow article{min-width:0}
.service-flow h3{white-space:normal}
.service-flow article>p{font-size:1rem}
.service-flow .deliverable{font-size:.875rem}
.offer-heading{margin-top:54px;margin-bottom:28px}
.offer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.offer-grid article{padding:28px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.offer-grid article:last-child{border:0}
.offer-grid .offer-primary{background:#eaf0ff}
.offer-label{font-size:.875rem;color:var(--blue);margin-bottom:12px}
.offer-grid h3{font-size:1.25rem;margin-bottom:14px}
.offer-grid ul{padding-left:18px;margin:18px 0 25px;font-size:.875rem;color:var(--ink)}
.offer-grid .text-button{margin-top:auto;font-size:.875rem}
.role-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;border-top:1px solid var(--line);padding-top:30px;margin-top:44px}
.role-strip p{font-size:1rem;color:var(--muted)}
.role-strip strong{display:block;color:var(--ink);font-size:1.125rem;margin-bottom:4px}
.evidence-rule{margin-top:28px;padding:24px 28px;background:var(--pale);border-left:3px solid var(--blue)}
.evidence-rule p{color:var(--muted);font-size:1rem;margin-top:8px}
.delivery-detail{margin-top:46px;padding-top:32px;border-top:1px solid var(--line)}
.monthly-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:24px}
.monthly-grid b{font-size:1rem;color:var(--blue)}
.monthly-grid p{margin-top:10px}
.cooperation-section{background:var(--pale)}
.cooperation-flow{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:25px;padding:0;margin:0 0 28px}
.cooperation-flow li{border-top:2px solid #c8d7f8;padding-top:20px;min-width:0}
.cooperation-flow b{font-size:1.75rem;color:var(--blue);font-weight:500}
.cooperation-flow h3{font-size:1.125rem;margin:12px 0 8px}
.public-boundary{padding:28px 0;color:var(--muted);font-size:.875rem}
.small-note,.form-note{font-size:.875rem}
.footer-links{flex-wrap:wrap}
.product-copy>p,.about-grid>div>p,.faq-list details>p{font-size:1rem}
.question-card p{overflow-wrap:anywhere}
@media(max-width:1150px){.desktop-nav,.nav-cta{display:none}.menu-toggle{display:block}.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-grid article:nth-child(2){border-right:0}.offer-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:760px){.diagnosis-grid,.service-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.role-strip,.monthly-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cooperation-flow{grid-template-columns:1fr;gap:20px}.cooperation-flow li{display:grid;grid-template-columns:42px 1fr;column-gap:14px;padding-top:16px}.cooperation-flow h3{margin:0}.cooperation-flow p{grid-column:2}.cooperation-flow b{grid-row:span 2}.service-foot{align-items:flex-start;gap:20px}.hero h1{font-size:clamp(1.8rem,5.9vw,2.65rem);letter-spacing:-.04em}.hero-actions{flex-wrap:wrap}.hero-actions .button{font-size:.9375rem}.hero-description{font-size:1rem}.hero-benefits{font-size:.875rem}.product-copy>p{font-size:1rem}}
@media(max-width:520px){.diagnosis-grid,.service-flow,.offer-grid{grid-template-columns:1fr}.diagnosis-grid{gap:0}.offer-grid article{border-right:0;border-bottom:1px solid var(--line)}.offer-grid article:last-child{border-bottom:0}.offer-heading h3{font-size:1.375rem}.monthly-grid,.role-strip{gap:24px 18px}.monthly-grid p{font-size:1rem}.evidence-rule{padding:20px}.hero-art{margin-top:20px}.nav-wrap{gap:12px}.brand-name{font-size:21px}.hero .hero-copy{min-width:0}.footer-bottom,.plain-button{font-size:.875rem}.small-note{font-size:.875rem}.service-flow article{padding:24px}.section{padding:64px 0}.question-card h3{font-size:1.125rem}}

.brand-deer{display:block;width:54px;height:54px;object-fit:contain;flex-shrink:0;mix-blend-mode:multiply}
@media(max-width:680px){.brand-deer{width:46px;height:46px}.brand{gap:7px}}

.home-cases-section{background:#f5f8fd}.home-cases-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.home-case-card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:10px;padding:28px;display:flex;flex-direction:column;min-width:0}.home-case-meta{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;color:var(--blue);font-size:14px}.home-case-card h3{font-size:23px;margin:20px 0 14px;overflow-wrap:anywhere}.home-case-card>p{font-size:16px;color:var(--muted);overflow-wrap:anywhere}.home-case-client{font-size:14px;color:var(--muted);padding:18px 0;margin-top:18px;border-top:1px solid var(--line)}.home-case-card>.text-button{margin-top:auto;padding-top:12px}.home-cases-empty{padding:32px;border:1px dashed #c7d7f1;border-radius:12px;background:#fff}.home-cases-empty p{color:var(--muted);font-size:16px;margin:12px 0 20px}.home-cases-section .small-note{margin-top:24px}@media(max-width:1280px){.desktop-nav,.nav-cta{display:none}.menu-toggle{display:block}}@media(max-width:760px){.home-cases-grid{grid-template-columns:1fr}.home-case-card{padding:24px}.home-cases-empty{padding:26px}}
