/* Distinct contractual scopes share the established GLV visual system. */
.operations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:42px; }
.operation { padding:30px; border:1px solid #d6bc7855; background:#0c171f; }
.operation-number { color:#d6bc78; font:36px Georgia,serif; margin-bottom:25px; }
.operation h3 { font-size:1.6rem; line-height:1.25; margin-bottom:25px; }
.operation p { color:#c7d0d0; margin-top:18px; font-size:.95rem; }
.cost-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:40px; }
.cost-grid .doc p { margin:0; font-size:1rem; }
.delivery-note { border-inline-start:3px solid #d6bc78; padding:24px; margin-top:30px; background:#14242b; }
.portfolio { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); list-style:none; padding:0; margin:35px 0 0; gap:1px; background:#d6bc7844; }
.portfolio li { background:#101d25; padding:24px; display:flex; gap:22px; align-items:baseline; }
.portfolio b { color:#d6bc78; font-size:.8rem; }
.spaced { margin-top:36px; }
#gestion .map-frame img { height:auto; max-height:560px; }
#agri-request { border:1px solid #c9a84c66; padding:24px; margin:28px 0; min-width:0; background:#111e25; color:#eee; }
#agri-request[hidden] { display:none; }
#agri-request legend { color:#d6bc78; padding:0 8px; font-size:1.15rem; }
.agri-form-note { margin:0 0 24px; color:#bac6c8; }
.agri-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 24px; }
.agri-fields .fg { min-width:0; }
#agri-request input,#agri-request select { width:100%; min-width:0; }
@media(max-width:1000px) { .operations { grid-template-columns:1fr; } .operation { padding:26px; } }
@media(max-width:700px) { .cost-grid,.portfolio,.agri-fields { grid-template-columns:1fr; } #agri-request { padding:18px; } .operation h3 { font-size:1.5rem; } }
.portfolio li:last-child { grid-column:1 / -1; }
/* Contract boundaries remain visible independently of the detailed phase copy. */
.productive-bridge { margin-top:24px; padding:20px; border-inline-start:3px solid #c9a84c; background:#c9a84c0d; }
.operation-summary { margin:22px 0; padding:16px; border:1px solid #c9a84c66; background:#c9a84c0d; }
.operation-summary>div+div { border-top:1px solid #c9a84c33; margin-top:12px; padding-top:12px; }
.operation-summary dt { color:#e3c77f; font-size:.76rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.operation-summary dd { margin:5px 0 0; color:#f0f3f0; font-size:.94rem; line-height:1.5; overflow-wrap:anywhere; }
