.odoo-hero { text-align: left; }
.odoo-hero h1, .odoo-hero .lead { margin-inline: 0; }
.odoo-hero h1 { max-width: 23ch; }
.odoo-hero .lead, .odoo-copy { max-width: 65ch; }
.odoo-hero .btn-group { margin-top: 1.5rem; }
.odoo-copy { color: var(--text-secondary); line-height: 1.75; margin-bottom: 1.5rem; }
.odoo-page #modularite, .odoo-page #donnees { scroll-margin-top: calc(var(--header-height, 84px) + 24px); }
.odoo-app-flow { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1.5rem; list-style: none; padding: 0; margin: 2rem 0 1rem; }
.odoo-app-flow li { position: relative; border-top: 1px solid var(--border-light); padding-top: 1rem; }
.odoo-flow-number { display: block; color: var(--teal); font: .8rem ui-monospace,monospace; margin-bottom: 1rem; }
.odoo-app-flow img { display: block; object-fit: contain; margin-bottom: 1rem; }
.odoo-app-flow h3 { font-size: 1.2rem; font-weight: 500; margin-bottom: .7rem; }
.odoo-app-flow p { color: var(--text-secondary); font-size: .95rem; line-height: 1.75; max-width: 35ch; }
.odoo-sector-links { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 3rem; }
.odoo-sector-links a { display: flex; flex-direction: column; color: var(--text); }
.odoo-sector-links h3 { line-height: 1.5; margin-bottom: 1rem; }
.odoo-sector-links p { color: var(--text-secondary); }
.odoo-sector-links .text-link { margin-top: auto; padding-top: 1.5rem; }
.odoo-source { color: var(--text-secondary); font-size: .8rem; line-height: 1.7; margin-top: 1.8rem; max-width: 85ch; }
.odoo-source a { color: var(--teal); text-decoration: underline; text-underline-offset: .2em; }
.odoo-data-cards, .odoo-plan-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; margin-top: 2rem; }
.odoo-data-cards h3 { margin-bottom: 1rem; }
.odoo-data-cards p { color: var(--text-secondary); }
.odoo-data-cards .odoo-card-result { border-top: 1px solid var(--border); padding-top: 1rem; margin-top: 1.2rem; font-size: .85rem; color: var(--teal); }
.odoo-data-note { border-left: 2px solid var(--accent-light); padding-left: 1.3rem; margin-top: 2rem; }
.odoo-data-note h3 { font-size: 1.15rem; margin-bottom: .8rem; }
.odoo-data-note p { color: var(--text-secondary); line-height: 1.75; max-width: 65ch; margin-bottom: 1rem; }
.odoo-plan-grid article { border-top: 1px solid var(--border-light); padding-top: 1rem; }
.odoo-plan-grid h3 { font-size: 1.15rem; font-weight: 500; margin-bottom: 1rem; line-height: 1.5; }
.odoo-plan-grid p { color: var(--text-secondary); font-size: .95rem; line-height: 1.75; }
.odoo-plan-detail { border-block: 1px solid var(--border); margin: 2rem 0; }
.odoo-plan-detail summary { padding: 1.2rem 0; cursor: pointer; line-height: 1.7; }
.odoo-plan-detail > div { padding-bottom: 1.2rem; }
.odoo-plan-detail p { max-width: 65ch; color: var(--text-secondary); line-height: 1.75; margin-bottom: 1rem; }
.odoo-page > .section .btn-group { align-items: center; }
@media (max-width: 900px) { .odoo-app-flow { grid-template-columns: repeat(2,minmax(0,1fr)); } .odoo-data-cards, .odoo-plan-grid { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .odoo-sector-links { grid-template-columns: 1fr; } .odoo-app-flow { gap: 1.5rem 1rem; } .odoo-app-flow p { font-size: .88rem; } }
