/* Faithful native transposition of the retrieved 21st JSX structures.
   Geometry follows the original Tailwind values; only colors and content vary.
   Source mapping and original snapshots: docs/composants-21st.md. */
[data-21st]{--t21-card:#fffcf7;--t21-muted:var(--soft);--t21-border:var(--line);font-family:Arial,Helvetica,sans-serif;color:var(--green);font-size:14px;line-height:1.5}
[data-21st] h2,[data-21st] h3,[data-21st] p{font-family:inherit;letter-spacing:normal}
[data-21st] a{color:inherit}
[data-21st] a:focus-visible,[data-21st] summary:focus-visible{outline:2px solid var(--green);outline-offset:4px}

/* Product Card, default size: max-w-[320px]; square well; image p-8;
   content flex items-start justify-between gap-2, px-1 py-3. */
.catalogue-partners{display:grid;grid-template-columns:repeat(4,minmax(0,320px));gap:32px;align-items:start}
.t21-product{width:100%;max-width:320px;min-width:0;border:0;background:transparent;padding:0;overflow:hidden;border-radius:12px}
.t21-product-image{position:relative;aspect-ratio:1;width:100%;overflow:hidden;border-radius:12px;background:var(--t21-muted);transition:background-color .15s ease}
.t21-product-image:hover,.t21-product-image[data-pressed]{background:color-mix(in srgb,var(--t21-muted) 80%,transparent)}
.t21-product-image img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;padding:32px;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.t21-product-image-photo img{padding:0;object-fit:cover}
.t21-product-image:hover img,.t21-product-image[data-pressed] img{transform:translateY(-8px)}
.t21-product-image-link{display:block;position:absolute;inset:0}
.t21-product-content{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:12px 4px}
.t21-product-header{min-width:0;flex:1}
.noel-page .t21-product h3{margin:0;font:500 14px/21px Arial,Helvetica,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--green)}
.t21-product h3 a{text-decoration:none}
.t21-product h3 a:hover{text-decoration:underline}
.noel-page .t21-product .t21-product-subtitle{margin:0;font:400 14px/21px Arial,Helvetica,sans-serif;color:var(--muted);text-align:left;hyphens:none}
.t21-product-subtitle>span{display:block;margin-top:4px}
.t21-product-metric{flex:none;font-size:14px;font-weight:500;line-height:21px;white-space:nowrap}
.t21-product-prices{padding:0 4px;color:var(--muted);font-size:12px}
.t21-product-prices summary{width:fit-content;cursor:pointer;min-height:28px;text-decoration:underline;text-underline-offset:3px;list-style:none}
.t21-product-prices summary::-webkit-details-marker{display:none}
.noel-page .t21-product-prices p{font:12px/1.5 Arial,sans-serif;margin:0 0 8px;text-align:left}
@media(max-width:1000px){.catalogue-partners{grid-template-columns:repeat(2,minmax(0,320px));gap:32px;justify-content:center}}
@media(max-width:600px){.catalogue-partners{grid-template-columns:minmax(0,320px);gap:32px}}

/* FAQ: max-w-3xl, gap-10, centered header, max-w-2xl accordion. */
.noel-page .t21-faq{display:flex;justify-content:center;padding-block:64px}
.t21-faq-inner{display:flex;flex-direction:column;align-items:center;gap:40px;width:100%;max-width:768px}
.t21-faq-heading{display:flex;flex-direction:column;gap:8px;width:100%;text-align:center}
.noel-page .t21-faq-heading h2{margin:0;font:600 30px/36px Arial,Helvetica,sans-serif;letter-spacing:-.75px;text-align:center;color:var(--green)}
.noel-page .t21-faq-heading p{margin:0;font:400 14px/22.75px Arial,Helvetica,sans-serif;text-align:center;text-align-last:center;hyphens:none;color:var(--muted)}
.noel-page .t21-faq-heading p:last-child{margin-top:8px}
.noel-page .t21-faq .faq-list{display:block;width:100%;max-width:672px;margin:0;border:0}
.faq-item{border-bottom:1px solid var(--t21-border);scroll-margin-top:24px}
.faq-item:last-child{border-bottom:0}
.faq-item summary{display:flex;flex:1;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;color:var(--green);font-weight:500;cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.noel-page .t21-faq .faq-item h3{margin:0;font:500 16px/24px Arial,Helvetica,sans-serif;letter-spacing:normal;text-align:left;color:var(--green)}
.faq-item summary:hover h3{text-decoration:underline}
.t21-faq-chevron{flex:none;width:16px;height:16px;transition:transform .2s}
.faq-item[open] .t21-faq-chevron{transform:rotate(180deg)}
.faq-answer{padding:0 0 16px;animation:t21-answer-in .2s ease-out}
.noel-page .t21-faq .faq-answer p{margin:0 0 12px;font:400 16px/26px Arial,Helvetica,sans-serif;color:var(--muted);text-align:left;text-align-last:left;hyphens:none}
.noel-page .t21-faq .faq-answer p:last-child{margin-bottom:0}
.t21-support-card{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:672px;padding:32px;border:1px solid var(--t21-border);border-radius:8px;text-align:center;background:var(--t21-card)}
.t21-support-avatars{display:flex;padding-bottom:4px}
.t21-support-avatars>span{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:3px solid var(--t21-card);border-radius:50%;background:var(--t21-muted);color:var(--green)}
.t21-support-avatars>span+span{margin-left:-10px}
.t21-support-avatars>span:nth-child(2){z-index:2;background:var(--paper)}
.t21-support-avatars img{display:block;width:32px;height:32px;object-fit:contain}
.noel-page .t21-support-card h3{margin:0;font:600 20px/28px Arial,Helvetica,sans-serif;letter-spacing:-.3px;text-align:center}
.noel-page .t21-support-card p{max-width:400px;margin:0;font:400 14px/22.75px Arial,Helvetica,sans-serif;color:var(--muted);text-align:center;text-align-last:center;hyphens:none}
.t21-support-card>a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;margin-top:4px;padding:8px 16px;border-radius:6px;background:var(--green);color:var(--paper);font-size:14px;font-weight:500;text-decoration:none}
.t21-support-card>a:hover{background:#163b32}
@keyframes t21-answer-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:767px){.noel-page .t21-faq-heading h2{font-size:24px;line-height:32px;letter-spacing:-.6px}.noel-page .t21-faq .faq-item h3,.noel-page .t21-faq .faq-answer p{font-size:14px}.t21-support-card{padding:32px 24px}}
@media(min-width:1280px){.noel-page .t21-faq-heading h2{font-size:36px;line-height:40px;letter-spacing:-.9px}}
@media(prefers-reduced-motion:reduce){.t21-product-image,.t21-product-image img,.t21-faq-chevron,.faq-answer{animation:none;transition:none}}
