:root{--pf-navy:#243445;--pf-teal:#003a3c;--pf-teal-2:#204e51;--pf-sand:#e3cca1;--pf-mint:#f4fbf9;--pf-smoke:#f8f8f8;--pf-gray:#d6d5da;--pf-yellow:#ffc226;--pf-green:#2ab97e;--pf-white:#fff;--pf-black:#000;--navy-rgb:36 52 69;--sand-rgb:227 204 161;--color-bg:var(--pf-mint);--color-surface:var(--pf-white);--color-surface-2:var(--pf-smoke);--color-text:var(--pf-navy);--color-text-muted:rgb(var(--navy-rgb) / .72);--color-text-soft:rgb(var(--navy-rgb) / .56);--color-primary:var(--pf-navy);--color-primary-hover:var(--pf-teal);--color-on-primary:var(--pf-white);--color-accent:var(--pf-sand);--color-on-accent:var(--pf-navy);--color-eyebrow:var(--pf-teal-2);--color-warning:var(--pf-yellow);--color-success:var(--pf-green);--color-viewer:var(--pf-black);--line:rgb(var(--navy-rgb) / .12);--line-strong:rgb(var(--navy-rgb) / .22);--border-1:1px solid var(--line);--border-2:2px solid var(--line-strong);--line-on-dark:#ffffff38;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--radius-pill:999px;--shadow-sm:0 1px 2px rgb(var(--navy-rgb) / .08), 0 2px 6px rgb(var(--navy-rgb) / .06);--shadow-md:0 4px 12px rgb(var(--navy-rgb) / .08), 0 12px 32px rgb(var(--navy-rgb) / .1);--shadow-lg:0 12px 28px rgb(var(--navy-rgb) / .16), 0 32px 80px rgb(var(--navy-rgb) / .22);--focus-ring:0 0 0 3px var(--pf-white), 0 0 0 5px var(--pf-navy);--focus-ring-dark:0 0 0 3px var(--pf-sand);--hotspot-size:44px;--hotspot-bg:var(--pf-sand);--hotspot-fg:var(--pf-navy);--font-headline:"Titillium Web", system-ui, sans-serif;--font-body:"Archivo", system-ui, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.5rem;--text-2xl:clamp(1.75rem, 1.2rem + 2.4vw, 2.25rem);--text-display:clamp(2.125rem, 1.2rem + 3.6vw, 3.5rem);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--ease-out:cubic-bezier(.2, .8, .2, 1);--dur-fast:.15s;--dur:.25s;--gutter:20px;--tap:44px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}@media (width>=900px){:root{--gutter:32px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body,#root{min-height:100%;margin:0}body{background:var(--color-surface);color:var(--color-text);font:400 var(--text-md)/1.5 var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}h1,h2,h3{font-family:var(--font-headline);letter-spacing:-.005em;text-wrap:balance;margin:0;font-weight:700;line-height:1.1}p,dl,dd,figure{margin:0}img{max-width:100%}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--pf-navy);outline-offset:3px}.on-dark :focus-visible,.on-dark:focus-visible{outline-color:var(--pf-sand)}.icon{flex:none;display:block}.muted{color:var(--color-text-muted)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.eyebrow{font:600 var(--text-xs)/1.2 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--color-eyebrow)}.eyebrow--sand{color:var(--pf-sand)}.btn{--btn-bg:var(--color-primary);--btn-fg:var(--color-on-primary);--btn-border:transparent;--btn-shadow:none;border:2px solid var(--btn-border);border-radius:var(--radius-pill);background-color:var(--btn-bg);min-height:52px;color:var(--btn-fg);box-shadow:var(--btn-shadow);font:700 .9375rem/1.2 var(--font-body);letter-spacing:.05em;text-transform:uppercase;text-align:center;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease, box-shadow var(--dur) var(--ease-out), transform var(--dur-fast) ease;justify-content:center;align-items:center;gap:10px;padding:0 28px;text-decoration:none;display:inline-flex;position:relative}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn--primary{--btn-bg:var(--pf-navy);--btn-fg:var(--pf-white);--btn-shadow:0 8px 20px rgb(var(--navy-rgb) / .22)}.btn--accent{--btn-bg:var(--pf-sand);--btn-fg:var(--pf-navy);--btn-shadow:0 8px 20px rgb(var(--sand-rgb) / .45)}.btn--secondary{--btn-bg:var(--pf-white);--btn-fg:var(--pf-navy);--btn-border:var(--line-strong)}.btn--glass{--btn-bg:#ffffff24;--btn-fg:var(--pf-white);--btn-border:var(--line-on-dark);-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4)}.btn--glass:focus-visible,.on-dark .btn:focus-visible{outline-color:var(--pf-sand)}@media (hover:hover){.btn--primary:hover:not(:disabled){--btn-bg:var(--color-primary-hover);--btn-shadow:0 10px 26px rgb(var(--navy-rgb) / .3)}.btn--accent:hover:not(:disabled){background-image:linear-gradient(rgb(var(--navy-rgb) / .07), rgb(var(--navy-rgb) / .07))}.btn--secondary:hover:not(:disabled){--btn-border:var(--pf-navy)}.btn--glass:hover:not(:disabled){--btn-bg:#ffffff3d}}.btn--sm{min-height:var(--tap);gap:8px;padding:0 18px;font-size:.8125rem}.btn--lg{letter-spacing:.04em;min-height:60px;padding:0 24px;font-size:1rem}.btn--block{white-space:normal;width:100%;padding-block:10px}.btn--icon{width:52px;padding:0}.btn--icon.btn--sm{width:var(--tap)}.btn--icon.btn--lg{width:60px}.spinner{opacity:.9;border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:20px;height:20px;animation:.8s linear infinite spin}.spinner--lg{width:40px;height:40px;color:var(--pf-sand);border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.splash{background:var(--pf-navy);place-items:center;min-height:100dvh;display:grid}.splash img{filter:brightness(0)invert();width:120px;animation:.6s both fade-in}@keyframes fade-in{0%{opacity:0}}.shell{background:var(--color-surface);flex-direction:column;min-height:100dvh;display:flex}.shell__hero{isolation:isolate;gap:var(--space-5);padding:calc(var(--safe-top) + var(--space-4)) var(--gutter) calc(var(--space-6) + 28px);background:var(--pf-navy);color:var(--pf-white);flex-direction:column;display:flex;position:relative;overflow:hidden}.shell__photo{z-index:-2;object-fit:cover;object-position:28% 50%;width:100%;max-width:none;height:100%;position:absolute;inset:0}.shell__hero:before{content:"";z-index:-1;background:linear-gradient(180deg, rgb(var(--navy-rgb) / .72) 0%, rgb(var(--navy-rgb) / .82) 50%, rgb(var(--navy-rgb) / .96) 100%);position:absolute;inset:0}.shell__logo{filter:brightness(0)invert();width:68px;height:auto;margin:-4px 0 0 -6px}.shell__intro{gap:var(--space-3);flex-direction:column;display:flex}.shell__intro h1{font-size:var(--text-2xl)}.shell__lead{color:#ffffffd1;font-size:var(--text-md);max-width:42ch}.shell__panel{z-index:1;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-6) var(--gutter) calc(var(--safe-bottom) + var(--space-6));background:var(--color-surface);box-shadow:0 -12px 32px rgb(var(--navy-rgb) / .12);flex:1;margin-top:-28px;position:relative}.shell__content{gap:var(--space-6);width:100%;max-width:480px;animation:rise .5s var(--ease-out) both;flex-direction:column;margin:0 auto;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}.steps{gap:var(--space-2);grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.steps li{align-items:baseline;gap:var(--space-2) 5px;font-size:var(--text-xs);color:#fff9;flex-wrap:wrap;font-weight:500;display:flex}.steps li:before{content:"";background:#ffffff38;border-radius:3px;flex-basis:100%;height:3px}.steps li[data-state=done]:before,.steps li[data-state=current]:before{background:var(--pf-sand)}.steps li[data-state=current]{color:var(--pf-white);font-weight:600}.steps__num{font-family:var(--font-headline);color:var(--pf-sand);font-weight:700}@media (width>=900px){.shell{grid-template-columns:minmax(0,1.15fr) minmax(460px,1fr);display:grid}.shell__hero{align-self:start;gap:0;height:100dvh;padding:56px 64px;position:sticky;top:0}.shell__hero:before{background:linear-gradient(180deg, rgb(var(--navy-rgb) / .55) 0%, rgb(var(--navy-rgb) / .35) 35%, rgb(var(--navy-rgb) / .92) 100%)}.shell__hero:after{content:"";pointer-events:none;border:1px solid rgb(var(--sand-rgb) / .4);border-radius:var(--radius-lg);position:absolute;inset:20px}.shell__photo{animation:kenburns 24s var(--ease-out) both}.shell__logo{width:112px}.shell__intro{gap:var(--space-4);margin-top:auto}.shell__intro h1{font-size:var(--text-display);letter-spacing:.01em;max-width:14ch}.shell__lead{font-size:var(--text-lg)}.shell__panel{box-shadow:none;border-radius:0;flex-direction:column;justify-content:center;margin:0;padding:72px 64px;display:flex}.steps{margin-top:var(--space-7);border-top:1px solid #ffffff29;grid-template-columns:none;gap:0}.steps li{gap:var(--space-4);padding:var(--space-4) 0;font-size:var(--text-lg);border-bottom:1px solid #ffffff29;flex-wrap:nowrap}.steps li:before{display:none}.steps__num{min-width:2.4ch;margin:0;font-size:1.75rem;line-height:1}.steps li[data-state=todo] .steps__num{color:rgb(var(--sand-rgb) / .45)}}@keyframes kenburns{0%{transform:scale(1.08)}}.block{gap:var(--space-4);flex-direction:column;display:flex}.block__head{align-items:center;gap:var(--space-3);min-height:28px;display:flex}.block__num{background:var(--pf-sand);width:28px;height:28px;color:var(--pf-navy);font:700 var(--text-sm)/1 var(--font-headline);border-radius:50%;flex:none;place-items:center;display:grid}.block__title{font-size:var(--text-lg)}.block__meta{font-size:var(--text-sm);color:var(--color-text-muted);text-align:right;margin-left:auto}.field-label{font-weight:600;font-size:var(--text-sm)}.hint{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted);display:flex}.hint .icon{color:var(--pf-teal-2)}.alert{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:linear-gradient(#ffc22624, #ffc22624), var(--pf-white);color:var(--color-text);font-size:var(--text-sm);text-align:left;animation:rise .3s var(--ease-out) both;border:1px solid #ffc22699;font-weight:500;display:flex}.alert__icon{background:var(--pf-yellow);width:28px;height:28px;color:var(--pf-navy);border-radius:50%;flex:none;place-items:center;display:grid}.pin{position:relative}.pin__input{z-index:1;color:#0000;-webkit-text-fill-color:transparent;caret-color:#0000;cursor:text;background:0 0;border:0;outline:none;width:100%;height:100%;margin:0;padding:0;font-size:16px;position:absolute;inset:0}.pin__input::selection{background:0 0}.pin__input:focus-visible{outline:none}.pin__boxes{gap:var(--space-2);grid-template-columns:repeat(6,1fr);display:grid}.pin__box{border:var(--border-2);border-radius:var(--radius-md);background:var(--pf-mint);height:clamp(56px,16vw,72px);font:700 clamp(1.5rem, 6vw, 2rem)/1 var(--font-headline);color:var(--pf-navy);transition:border-color var(--dur-fast) ease, background-color var(--dur-fast) ease, box-shadow var(--dur) var(--ease-out), transform var(--dur) var(--ease-out);place-items:center;display:grid;position:relative}.pin__box[data-filled]{background:var(--pf-white);border-color:rgb(var(--navy-rgb) / .45);animation:pop .22s var(--ease-out)}.pin:focus-within .pin__box[data-active]{border-color:var(--pf-navy);background:var(--pf-white);box-shadow:0 0 0 4px rgb(var(--sand-rgb) / .7)}.pin:focus-within .pin__box[data-active]:not([data-filled]):after{content:"";background:var(--pf-navy);border-radius:2px;width:2px;height:40%;animation:1.05s step-end infinite blink}.pin--error .pin__box{border-color:var(--pf-yellow);background:#ffc2261a}.pin--error .pin__boxes{animation:.42s cubic-bezier(.36,.07,.19,.97) shake}.pin--busy .pin__box{animation:1.2s ease-in-out infinite breathe;animation-delay:calc(var(--i) * 90ms)}.pin__status{justify-content:center;align-items:center;gap:var(--space-2);min-height:24px;font-size:var(--text-sm);color:var(--color-text-muted);display:flex}@keyframes blink{50%{opacity:0}}@keyframes pop{50%{transform:scale(1.06)}}@keyframes breathe{50%{background:rgb(var(--sand-rgb) / .45);border-color:var(--pf-sand)}}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.dropzone{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-6) var(--space-5);border:2px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--pf-mint);color:var(--color-text);text-align:center;cursor:pointer;transition:border-color var(--dur-fast) ease, background-color var(--dur-fast) ease, transform var(--dur-fast) ease;flex-direction:column;display:flex}.dropzone:active{transform:scale(.99)}.dropzone[data-drag]{border-color:var(--pf-navy);background:var(--pf-white)}@media (hover:hover){.dropzone:hover{border-color:var(--pf-navy)}}.dropzone__icon{background:var(--pf-sand);width:64px;height:64px;color:var(--pf-navy);box-shadow:0 0 0 8px rgb(var(--sand-rgb) / .3);margin-bottom:var(--space-2);border-radius:50%;place-items:center;display:grid}.dropzone__title{font:700 var(--text-xl)/1.15 var(--font-headline)}.dropzone__hint{font-size:var(--text-sm);color:var(--color-text-muted)}.dropzone__desktop{display:none}@media (hover:hover) and (pointer:fine){.dropzone__desktop{display:inline}}.thumbs{gap:var(--space-2);grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}@media (width>=520px){.thumbs{grid-template-columns:repeat(4,1fr)}}.thumbs[data-drag]{outline:2px dashed var(--pf-navy);outline-offset:6px;border-radius:var(--radius-sm)}.thumb{aspect-ratio:1;border:var(--border-1);border-radius:var(--radius-sm);background:var(--pf-mint);animation:pop-in .3s var(--ease-out) both;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;display:block;position:relative}.thumb__fallback{color:var(--color-text-soft);place-items:center;display:grid;position:absolute;inset:0}.thumb__remove{cursor:pointer;background:rgb(var(--navy-rgb) / .78);width:28px;height:28px;color:var(--pf-white);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:6px;right:6px}.thumb__remove:before{content:"";position:absolute;inset:-8px}.thumb--add{justify-content:center;align-items:center;gap:var(--space-1);cursor:pointer;border:2px dashed var(--line-strong);width:100%;color:var(--pf-navy);font:600 var(--text-xs)/1 var(--font-body);letter-spacing:.08em;text-transform:uppercase;transition:border-color var(--dur-fast) ease;flex-direction:column;padding:0;animation:none;display:flex}@media (hover:hover){.thumb--add:hover{border-color:var(--pf-navy)}}@keyframes pop-in{0%{opacity:0;transform:scale(.92)}}.consent{gap:var(--space-3);padding:var(--space-4);cursor:pointer;border:var(--border-2);border-radius:var(--radius-md);background:var(--pf-mint);font-size:var(--text-sm);color:var(--color-text-muted);transition:border-color var(--dur-fast) ease, background-color var(--dur-fast) ease, color var(--dur-fast) ease;align-items:flex-start;line-height:1.45;display:flex}.consent:has(:checked){border-color:var(--pf-navy);background:var(--pf-white);color:var(--color-text)}.checkbox{appearance:none;cursor:pointer;border:2px solid rgb(var(--navy-rgb) / .45);background:var(--pf-white);width:24px;height:24px;transition:background-color var(--dur-fast) ease, border-color var(--dur-fast) ease;border-radius:7px;flex:none;margin:0}.checkbox:checked{border-color:var(--pf-navy);background:var(--pf-navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center / 16px no-repeat}.actionbar{gap:var(--space-3);flex-direction:column;display:flex}.actionbar__hint{margin-top:calc(-1 * var(--space-1));text-align:center;font-size:var(--text-xs);color:var(--color-text-muted)}@media (width<=899px){.actionbar{z-index:2;margin:calc(-1 * var(--space-4)) calc(-1 * var(--gutter)) calc(-1 * (var(--safe-bottom) + var(--space-6)));padding:var(--space-5) var(--gutter) calc(var(--safe-bottom) + var(--space-4));background:linear-gradient(#fff0, var(--pf-white) 32%);position:sticky;bottom:0}}.meter{gap:var(--space-3);flex-direction:column;display:flex}.meter__head{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.meter__count{align-items:baseline;gap:var(--space-2);font-family:var(--font-headline);display:flex}.meter__count strong{font-variant-numeric:tabular-nums;font-size:3rem;font-weight:700;line-height:1}.meter__count span{font-size:var(--text-lg);color:var(--color-text-muted);font-weight:600}.meter__pct{font:700 var(--text-lg)/1 var(--font-headline);color:var(--pf-teal-2);font-variant-numeric:tabular-nums}.bar{border-radius:var(--radius-pill);background:rgb(var(--navy-rgb) / .08);height:10px;position:relative;overflow:hidden}.bar__fill{border-radius:inherit;background:linear-gradient(90deg, var(--pf-teal-2), var(--pf-navy));transition:width .6s var(--ease-out);position:absolute;inset:0 auto 0 0}.bar__fill:after{content:"";background:linear-gradient(90deg, transparent, rgb(var(--sand-rgb) / .8), transparent);animation:1.8s ease-in-out infinite sheen;position:absolute;inset:0;transform:translate(-100%)}.bar--indeterminate .bar__fill{animation:1.4s ease-in-out infinite indeterminate;width:35%!important}@keyframes sheen{to{transform:translate(100%)}}@keyframes indeterminate{0%{left:-35%}to{left:100%}}.ptiles{gap:var(--space-3);grid-template-columns:repeat(2,1fr);margin:0;padding:0;list-style:none;display:grid}@media (width>=520px){.ptiles{grid-template-columns:repeat(3,1fr)}}.ptile{aspect-ratio:4/3;border:var(--border-1);border-radius:var(--radius-md);background:var(--pf-mint);animation:pop-in .35s var(--ease-out) both;animation-delay:calc(var(--i,0) * 60ms);position:relative;overflow:hidden}.ptile img{object-fit:cover;width:100%;height:100%;transition:filter .8s,opacity .8s;display:block}.ptile[data-status=en_attente] img{filter:grayscale();opacity:.55}.ptile[data-status=analyse] img,.ptile[data-status=generation] img{filter:grayscale(.7)contrast(.95)}.ptile[data-status=terminee] img{animation:.8s both fade-in}.ptile__scan{pointer-events:none;background:linear-gradient(180deg, transparent 0%, rgb(var(--sand-rgb) / 0) 42%, rgb(var(--sand-rgb) / .65) 50%, rgb(var(--sand-rgb) / 0) 58%, transparent 100%);background-size:100% 250%;animation:2.4s ease-in-out infinite scan;position:absolute;inset:0}@keyframes scan{0%{background-position:0 100%}to{background-position:0 0}}.ptile__chip{left:var(--space-2);bottom:var(--space-2);border-radius:var(--radius-pill);background:rgb(var(--navy-rgb) / .8);max-width:calc(100% - 16px);color:var(--pf-white);font:600 var(--text-xs)/1 var(--font-body);white-space:nowrap;text-overflow:ellipsis;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:6px;padding:5px 10px 5px 8px;display:inline-flex;position:absolute;overflow:hidden}.ptile__num{top:var(--space-2);left:var(--space-2);border-radius:var(--radius-pill);background:var(--pf-white);min-width:24px;height:24px;color:var(--pf-navy);font:700 var(--text-xs)/1 var(--font-headline);box-shadow:var(--shadow-sm);place-items:center;padding:0 6px;display:grid;position:absolute}.ptile__dot{background:#ffffff80;border-radius:50%;flex:none;width:8px;height:8px}.ptile[data-status=analyse] .ptile__dot,.ptile[data-status=generation] .ptile__dot{background:var(--pf-sand);animation:1s ease-in-out infinite blink}.ptile[data-status=terminee] .ptile__dot{background:var(--pf-green)}.ptile[data-status=echec] .ptile__dot{background:var(--pf-yellow)}.note{align-items:flex-start;gap:var(--space-3) var(--space-4);padding:var(--space-4);border:var(--border-1);border-radius:var(--radius-md);background:var(--pf-mint);font-size:var(--text-sm);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.note__icon{background:var(--pf-white);width:40px;height:40px;color:var(--pf-teal-2);border:var(--border-1);border-radius:50%;flex:none;place-items:center;display:grid}.note__text{flex:180px}.note__text strong{color:var(--color-text);font-weight:600;display:block}.note .btn{flex:100%}@media (width>=520px){.note{align-items:center}.note .btn{flex:none}}.results{--viewer-pad-top:0px;--viewer-pad-bottom:0px;--viewer-pad-x:0px;background:var(--color-viewer);color:var(--pf-white);position:fixed;inset:0}.cards{scroll-snap-type:x mandatory;scrollbar-width:none;background:0 0;height:100dvh;display:flex;overflow:auto hidden}.cards::-webkit-scrollbar{display:none}.card{scroll-snap-align:center;scroll-snap-stop:always;height:100%;padding:var(--viewer-pad-top) var(--viewer-pad-x) var(--viewer-pad-bottom);flex:0 0 100%;justify-content:center;align-items:center;display:flex;position:relative}.card__frame{width:min(100%, calc((100dvh - var(--viewer-pad-top) - var(--viewer-pad-bottom)) * var(--r,99)));aspect-ratio:var(--r,auto);position:relative}.card__img{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}@media (width>=900px) and (hover:hover){.results{--viewer-pad-top:92px;--viewer-pad-bottom:132px;--viewer-pad-x:112px}.card__img{border-radius:var(--radius-md);box-shadow:0 24px 80px #0009}}.results__top,.results__bottom{z-index:2;pointer-events:none;position:absolute;left:0;right:0}.results__top>*,.results__bottom>*{pointer-events:auto}.results__top{padding:calc(var(--safe-top) + var(--space-3)) var(--gutter) var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-3);background:linear-gradient(#0009,#0000);flex-wrap:wrap;display:flex;top:0}.results__logo{filter:brightness(0)invert();width:56px;height:auto;margin:-6px 0 -6px -4px}.results__msg{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--line-on-dark);font-size:var(--text-sm);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#00000073;flex-basis:100%;padding:10px 14px;display:flex}.results__msg .icon{color:var(--pf-yellow)}.results__bottom{padding:var(--space-6) var(--gutter) calc(var(--safe-bottom) + var(--space-4));gap:var(--space-4);background:linear-gradient(#0000,#000000a6);flex-direction:column;display:flex;bottom:0}.results__row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.results__count{min-width:0;line-height:calc(var(--tap) - 4px);border:2px solid var(--line-on-dark);border-radius:var(--radius-pill);font-weight:600;font-size:var(--text-sm);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);background:#ffffff24;padding:0 18px;display:inline-block;overflow:hidden}.results__color{color:#ffffffbf;font-weight:500}.results__dl{flex:none}@media (width<=399px){.results__dl{width:var(--tap);padding:0}.results__dl-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}}.results__dots{justify-content:center;gap:6px;display:flex}.results__dot{width:6px;height:6px;transition:width var(--dur) var(--ease-out), background-color var(--dur) ease;background:#fff6;border-radius:3px}.results__dot[data-active]{background:var(--pf-sand);width:20px}.results__nav{display:none}@media (hover:hover) and (pointer:fine){.results__nav{z-index:2;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.results__nav:active:not(:disabled){transform:translateY(-50%)scale(.95)}.results__nav--prev{left:var(--gutter)}.results__nav--next{right:var(--gutter)}.results__nav:disabled{opacity:0;pointer-events:none}}.hotspot{z-index:1;width:var(--hotspot-size);height:var(--hotspot-size);cursor:pointer;border:2px solid var(--pf-white);background:var(--hotspot-bg);color:var(--hotspot-fg);animation:hotspot-in .5s var(--ease-out) backwards, pulse 2.4s ease-out infinite;animation-delay:calc(var(--i,0) * 90ms + .2s), calc(var(--i,0) * 90ms + .9s);transition:transform var(--dur) var(--ease-out);border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 4px 14px #00000059}.hotspot .icon{stroke-width:2.75px;width:22px;height:22px}.hotspot:focus-visible{outline-color:var(--pf-sand)}@media (hover:hover){.hotspot:hover{transform:translate(-50%,-50%)scale(1.12)}}@keyframes hotspot-in{0%{opacity:0;transform:translate(-50%,-50%)scale(0)}}@keyframes pulse{0%{box-shadow:0 4px 14px #00000059, 0 0 0 0 rgb(var(--sand-rgb) / .75)}70%,to{box-shadow:0 4px 14px #00000059, 0 0 0 16px rgb(var(--sand-rgb) / 0)}}.card__busy{gap:var(--space-3);text-align:center;background:rgb(var(--navy-rgb) / .6);color:var(--pf-white);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:inherit;flex-direction:column;justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;inset:0}.toast{z-index:20;left:50%;bottom:calc(var(--safe-bottom) + 132px);align-items:center;gap:var(--space-3);width:min(440px,100% - 32px);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--pf-white);color:var(--color-text);font-size:var(--text-sm);box-shadow:var(--shadow-lg);cursor:pointer;animation:toast-in .35s var(--ease-out) both;font-weight:500;display:flex;position:fixed;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}}.pf-backdrop{z-index:10;background:rgb(var(--navy-rgb) / .7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:fixed;inset:0}.pf-card{top:calc(var(--safe-top) + 12px);bottom:calc(var(--safe-bottom) + 12px);background:var(--color-surface);max-width:560px;color:var(--color-text);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transform-origin:50%;will-change:transform;flex-direction:column;margin:0 auto;display:flex;position:fixed;left:12px;right:12px;overflow:hidden}.pf-card__close{top:var(--space-3);right:var(--space-3);z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#ffffffeb;position:absolute}.pf-card__media{background:radial-gradient(circle at 50% 42%, var(--pf-white) 0%, var(--pf-smoke) 55%, var(--pf-mint) 100%);border-bottom:var(--border-1);flex:1 1 0;place-items:center;min-height:40%;transition:min-height .3s;display:grid;position:relative}.pf-card__media img{object-fit:contain;width:100%;height:100%;filter:drop-shadow(0 14px 20px rgb(var(--navy-rgb) / .2));padding:32px 24px 16px;position:absolute;inset:0}.pf-card__placeholder{color:var(--color-text-muted);font-size:var(--text-sm)}.pf-card__body{overscroll-behavior:contain;max-height:60%;padding:var(--space-5) var(--space-5) var(--space-5);gap:var(--space-5);flex-direction:column;flex:0 auto;display:flex;overflow-y:auto}.pf-card__head{gap:var(--space-2);flex-direction:column;display:flex}.pf-card__ref{align-items:center;gap:var(--space-2);display:flex}.pf-card__ref .eyebrow{letter-spacing:.14em;font-size:var(--text-sm);font-weight:700}.pf-card__body h2{font-size:var(--text-2xl)}.pf-card__serie{font-size:var(--text-sm);color:var(--color-text-muted)}.pf-card__badge{border-radius:var(--radius-pill);background:var(--pf-sand);color:var(--pf-navy);font:700 .6875rem/1.4 var(--font-body);letter-spacing:.08em;text-transform:uppercase;padding:3px 10px}.pf-stats{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(92px,1fr));display:grid}.pf-stat{justify-content:flex-end;gap:var(--space-1);padding:var(--space-3);border:var(--border-1);border-radius:var(--radius-md);background:var(--pf-mint);flex-direction:column-reverse;display:flex}.pf-stat dt{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.3}.pf-stat dd{font:700 var(--text-xl)/1 var(--font-headline);font-variant-numeric:tabular-nums;white-space:nowrap}.pf-stat dd small{font:600 var(--text-xs)/1 var(--font-body);color:var(--color-text-muted);margin-left:3px}.pf-specs__toggle{width:100%;min-height:56px;padding:var(--space-2) var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);border:var(--border-2);border-radius:var(--radius-md);background:var(--pf-white);font:600 var(--text-md)/1.3 var(--font-body);color:var(--color-text);text-align:left;cursor:pointer;transition:border-color var(--dur-fast) ease;display:flex}@media (hover:hover){.pf-specs__toggle:hover{border-color:var(--pf-navy)}}.pf-specs__toggle small{font-weight:400;font-size:var(--text-sm);color:var(--color-text-muted);margin-top:2px;display:block}.pf-specs__chevron{transition:transform var(--dur) var(--ease-out)}.pf-specs__toggle[aria-expanded=true] .pf-specs__chevron{transform:rotate(180deg)}.pf-specs-wrap{flex-direction:column;display:flex}.pf-specs{grid-template-rows:0fr;transition:grid-template-rows .3s;display:grid}.pf-specs[data-open=true]{grid-template-rows:1fr}.pf-specs__inner{margin:0;display:grid;overflow:hidden}.pf-specs[data-open=true] .pf-specs__inner{padding-top:var(--space-2)}.pf-specs__inner div{gap:var(--space-3);padding:var(--space-3) var(--space-1);border-bottom:var(--border-1);grid-template-columns:1fr 1.3fr;display:grid}.pf-specs__inner div:last-child{border-bottom:0}.pf-specs__inner dt{color:var(--color-text-muted);font-size:var(--text-sm)}.pf-specs__inner dd{font-weight:500;font-size:var(--text-sm);margin:0}.pf-card:has(.pf-specs[data-open=true]) .pf-card__media{min-height:28%}@media (width>=900px){.pf-card{flex-direction:row;width:min(1000px,100vw - 64px);max-width:none;height:min(660px,100dvh - 64px);margin:auto;inset:0}.pf-card__media{border-bottom:0;border-right:var(--border-1);flex:1.1 1 0;min-height:0}.pf-card__media img{padding:48px}.pf-card__body{flex:1 1 0;max-height:none;padding:56px 40px 40px}.pf-card:has(.pf-specs[data-open=true]) .pf-card__media{min-height:0}.pf-card .pf-colors__row{justify-items:center;row-gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(44px,1fr));display:grid;overflow:visible}}.pf-colors{gap:var(--space-3);flex-direction:column;display:flex}.pf-colors__label{font-weight:600;font-size:var(--text-sm);justify-content:space-between;gap:var(--space-2);display:flex}.pf-colors__label span{color:var(--color-text-muted);font-weight:500}.pf-colors__row{gap:var(--space-3);scrollbar-width:none;margin:-6px;padding:6px;display:flex;overflow-x:auto}.pf-colors__row::-webkit-scrollbar{display:none}.pf-colors__row--wrap{justify-items:center;row-gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(44px,1fr));display:grid;overflow:visible}.pf-swatch{cursor:pointer;border:1px solid rgb(var(--navy-rgb) / .18);width:44px;height:44px;transition:box-shadow var(--dur) var(--ease-out), transform var(--dur-fast) ease;border-radius:50%;flex:none;place-items:center;padding:0;display:grid;position:relative}.pf-swatch .icon{opacity:0;transition:opacity var(--dur-fast) ease, transform var(--dur) var(--ease-out);transform:scale(.5)}.pf-swatch[aria-pressed=true]{box-shadow:0 0 0 3px var(--pf-white), 0 0 0 5px var(--pf-navy)}.pf-swatch[aria-pressed=true] .icon{opacity:1;transform:none}.pf-swatch:active{transform:scale(.92)}@media (hover:hover){.pf-swatch:hover:not([aria-pressed=true]){box-shadow:0 0 0 3px var(--pf-white), 0 0 0 5px var(--line-strong)}}.pf-swatch--metal{background-image:linear-gradient(135deg,#ffffff73,#fff0 45%,#0000001f)}.pf-swatch--light{color:var(--pf-navy)}.pf-swatch--dark{color:var(--pf-white)}.pf-card__img{animation:.18s ease-out pf-fade}@keyframes pf-fade{0%{opacity:.35}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.spinner{animation-duration:3s!important;animation-iteration-count:infinite!important}.ptile__scan,.bar__fill:after{display:none}}
