.demo{--forest:#0b3d2e;--green:#1b6b4c;--gold:#c9a227;--line:#dae0dc;--muted:#5a6b63;color:#1a1a1a;letter-spacing:0;background:#f4f6f5;min-height:100dvh;font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:17px;line-height:1.6}.demo *,.demo :before,.demo :after{box-sizing:border-box}.demo h1,.demo h2,.demo h3{color:var(--forest);letter-spacing:0;overflow-wrap:anywhere;margin:0 0 16px;font-family:Cambria,Georgia,serif;font-weight:400;line-height:1.2}.demo h1{max-width:820px;font-size:36px}.demo h2{font-size:27px}.demo h3{font-size:22px}.demo p{margin:0 0 20px}.demo a{color:var(--forest);text-underline-offset:4px}.demo a:focus-visible,.demo button:focus-visible,.demo input:focus-visible,.demo [tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.demo button,.demo input{font:inherit}.demo button{cursor:pointer}.demo button:disabled{cursor:not-allowed;color:#5a6b63;background:#e8ece9;border-color:#dae0dc}.demo svg{flex-shrink:0}.demo-header{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;max-width:1200px;margin:auto;padding:18px 24px;display:flex}.demo-brand{align-items:center;min-height:44px;font-family:Cambria,Georgia,serif;font-size:23px;font-weight:700;text-decoration:none;display:inline-flex}.demo-back{align-items:center;gap:8px;min-height:44px;font-size:15px;display:inline-flex}.demo-session{max-width:1200px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:0 20px;margin:auto;padding:8px 24px;font-size:14px;display:flex}.demo-session span{overflow-wrap:anywhere;min-width:0}.demo-session button{min-height:44px;color:var(--forest);text-underline-offset:3px;background:0 0;border:0;padding:8px 0;text-decoration:underline}.demo-main{min-width:0;max-width:1200px;margin:auto;padding:36px 24px 64px}.demo-heading{max-width:820px;margin-bottom:32px}.demo-heading>p:last-child{color:var(--muted);font-size:19px}.demo-eyebrow{color:#826710;font-size:13px;font-weight:700;margin:0 0 14px!important}.demo-bricks{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.demo-brick{background-color:var(--forest);color:#fff;background-position:50%;background-size:cover;border:1px solid #ffffff47;border-radius:6px;flex-direction:column;min-width:0;min-height:340px;padding:26px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex;overflow:hidden;box-shadow:0 10px 28px #0d302524}.demo-brick--observer{background-image:linear-gradient(110deg,#082a1ff0,#082a1fad),url(/portal/tile-observer.jpg)}.demo-brick--encadrer{background-image:linear-gradient(110deg,#08201df0,#08201da6),url(/portal/tile-skypath.jpg)}.demo-brick--operer{background-image:linear-gradient(110deg,#0b1c19f0,#0b1c199e),url(/portal/tile-hardware.jpg)}.demo-brick:hover{border-color:#e2c360e6;transform:translateY(-2px);box-shadow:0 16px 36px #0d302538}.demo-brick:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.demo-brick h2{color:#fff;text-shadow:0 2px 12px #0003;font-size:25px}.demo-brick p{color:#ffffffd6}.demo-brick-top,.demo-brick-bottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.demo-brick-top{color:#dcebe4;margin-bottom:25px}.demo-brick-top .demo-eyebrow{color:#e2c360;margin:0!important}.demo-brick-bottom{color:#fff;border-top:1px solid #ffffff47;margin-top:auto;padding-top:24px;font-size:13px}.demo-section{border-top:1px solid var(--line);margin-top:38px;padding-top:38px}.demo-first{border-top:0;padding-top:0}.demo-muted{color:var(--muted)}.demo-small{color:var(--muted);font-size:14px;line-height:1.55}.demo-table-scroll{border:1px solid var(--line);max-width:100%;margin-bottom:16px;overflow-x:auto}.demo table{border-collapse:collapse;text-align:left;background:#fff;width:100%;min-width:740px;font-size:15px}.demo th,.demo td{border-bottom:1px solid var(--line);vertical-align:top;padding:16px}.demo th{color:var(--forest);font-weight:600}.demo thead{background:#e9efeb}.demo th:first-child{width:18%}.demo .demo-highlight{background:#f7efd6;font-weight:700}.demo-combinations{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.demo-combinations article{border-top:2px solid var(--gold);min-width:0;padding-top:22px}.demo-badge{color:var(--forest);background:#e4eee8;border-radius:3px;margin-bottom:16px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.demo-badge.neutral{color:#5a6b63;background:#edf0ed}.demo-button{border:1px solid var(--forest);background:var(--forest);text-align:center;overflow-wrap:anywhere;border-radius:4px;justify-content:center;align-items:center;gap:12px;max-width:100%;min-height:48px;padding:12px 20px;font-weight:600;line-height:1.4;text-decoration:none;display:inline-flex;color:#fff!important}.demo .demo-button:disabled{color:#5a6b63!important}.demo-button:hover:not(:disabled){background:var(--green);color:#fff!important}.demo-button.secondary{border-color:var(--line);background:#fff;color:var(--forest)!important}.demo-documents{flex-wrap:wrap;gap:24px;display:flex}.demo-documents>div{min-width:0;max-width:100%}.demo-documents .demo-small{margin-top:8px}.demo-footer{border-top:1px solid var(--line);max-width:1200px;color:var(--muted);overflow-wrap:anywhere;flex-wrap:wrap;justify-content:space-between;gap:14px 24px;margin:auto;padding:24px;font-size:14px;display:flex}.demo-callout{border-left:3px solid var(--gold);margin:30px 0;padding:24px 0 24px 24px}.demo-callout .demo-small{margin:16px 0 0}.demo-satellite{margin:28px 0}.demo-satellite img{aspect-ratio:1;object-fit:contain;background:#e0e8e2;width:100%;max-width:520px;display:block}.demo figcaption{color:var(--muted);margin-top:8px;font-size:13px}.demo-generations{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;display:grid}.demo-product{border-top:2px solid var(--gold);min-width:0;padding-top:24px}.demo-product>figure{margin:0 0 20px}.demo-product img{aspect-ratio:1.5;object-fit:contain;background:#e5eaec;width:100%;height:auto;display:block}.demo-placeholder{min-height:112px;color:var(--muted);text-align:center;overflow-wrap:anywhere;border:1px dashed #bac5be;justify-content:center;align-items:center;gap:12px;padding:20px;font-size:14px;display:flex}.demo-product>.demo-placeholder:first-of-type{aspect-ratio:1.5}.demo-gallery-missing{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0;display:grid}.demo-gallery-missing .demo-placeholder{flex-direction:column}.demo-bee{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;display:grid}.demo-bee figure{margin:0}.demo-bee img{object-fit:contain;background:#edf0f1;width:100%;max-height:480px;display:block}.demo dl{margin:24px 0}.demo dt{color:var(--muted);margin-top:14px;font-size:13px}.demo dd{margin:0;font-weight:600}.demo video{aspect-ratio:16/9;background:#1a1a1a;max-width:100%}.demo-access{padding:64px 24px 32px}.demo-access main{max-width:520px;margin:0 auto}.demo-access h1{margin-bottom:6px;font-size:42px}.demo-subtitle{color:var(--forest);font-family:Cambria,Georgia,serif;font-size:26px}.demo-tricolour{width:108px;height:3px;margin:24px 0 32px;display:flex}.demo-tricolour i{background:var(--green);width:36px}.demo-tricolour i:nth-child(2){background:var(--gold)}.demo-tricolour i:nth-child(3){background:#9e2b25}.demo-access label{margin-bottom:8px;font-size:15px;font-weight:600;display:block}.demo-input{color:var(--muted);background:#fff;border:1px solid #a6b6ab;border-radius:4px;align-items:center;gap:12px;padding:0 14px;display:flex}.demo-input input{color:#1a1a1a;background:0 0;border:0;border-radius:0;width:100%;min-width:0;height:50px;font-size:17px}.demo-error{color:#9e2b25;font-size:14px;margin:8px 0!important}.demo-access .demo-button{width:100%;margin:8px 0 24px}.demo-access footer{border-top:1px solid var(--line);color:var(--muted);margin-top:32px;padding-top:22px;font-size:13px}.demo-loading{place-content:center;display:grid}@media (width<=760px){.demo-bricks,.demo-combinations,.demo-generations,.demo-bee{grid-template-columns:minmax(0,1fr)}.demo-header{padding:12px 20px}.demo-session{padding:8px 20px}.demo-main{padding:28px 20px 48px}.demo h1{font-size:32px}.demo h2{font-size:25px}.demo-brick{padding:22px}.demo-brick-top{margin-bottom:18px}.demo-section{margin-top:30px;padding-top:30px}.demo-documents{grid-template-columns:minmax(0,1fr);display:grid}.demo-documents .demo-button{width:100%}.demo-callout{padding-left:18px}.demo-access{padding:42px 24px 24px}.demo-access h1{font-size:36px}.demo-bee img{max-height:390px}}
