.project-showcase{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, #22d3ee 6%);border-radius:28px;margin:64px 0;padding:38px}.project-section-heading{grid-template-columns:1.2fr 1fr;align-items:end;gap:32px;margin-bottom:26px;display:grid}.project-section-heading h2{letter-spacing:-1.8px;margin:8px 0 0;font-size:clamp(28px,3.2vw,44px);line-height:1.08}.project-section-heading h2 em{color:var(--green);font-style:normal}.project-section-heading>p{max-width:380px;color:var(--muted);margin:0;font-size:13px;line-height:1.7}.project-filters{flex-wrap:wrap;gap:8px;margin-bottom:26px;display:flex}.project-filters button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:99px;padding:9px 14px;font-size:11px;font-weight:700}.project-filters button[aria-pressed=true]{color:#fff;background:#11675c;border-color:#11675c}.project-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.project-card{border:1px solid var(--line);background:var(--surface);border-radius:20px;flex-direction:column;min-width:0;transition:box-shadow .2s,border-color .2s;display:flex;overflow:hidden}.project-card:hover{border-color:#18a59e;box-shadow:0 8px 24px #06b6d41f}.project-card-open{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;flex:1;padding:8px}.project-card-image{aspect-ratio:4/5;background:#142327;border-radius:13px;position:relative;overflow:hidden}.project-card-image:after{content:"";background:linear-gradient(#0000,#031d24bd);position:absolute;inset:50% 0 0}.project-card-image img{object-fit:cover;width:100%;height:100%}.project-image-tag,.project-open-hint{z-index:1;color:#fff;font-size:10px;font-weight:700;position:absolute}.project-image-tag{background:#102628cc;border-radius:99px;padding:5px 9px;top:10px;left:10px}.project-open-hint{bottom:14px;left:12px;right:8px}.project-card-copy{padding:16px 8px 10px}.project-category{color:var(--green);letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:800}.project-card-copy h3{letter-spacing:-.3px;margin:7px 0;font-size:16px;line-height:1.25}.project-card-copy p{color:var(--muted);margin:0 0 10px;font-size:11px;line-height:1.6}.project-card-copy small{color:var(--muted);font-size:9px}.project-edit-button{border:0;border-top:1px solid var(--line);color:var(--green);background:0 0;justify-content:space-between;gap:8px;margin:0 16px 16px;padding:11px 0 0;font-size:11px;font-weight:800;display:flex}.project-admin-note,.project-load-error{color:var(--muted);margin:0 0 20px;font-size:12px;line-height:1.6}.project-dialog{border:1px solid var(--line);background:var(--surface);width:min(840px,100% - 28px);max-height:calc(100dvh - 36px);color:var(--ink);border-radius:22px;margin:auto;padding:0;overflow-y:auto;box-shadow:0 28px 100px #0007}.project-dialog:not([open]){display:none}.project-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#07191ccc}.project-dialog-content{padding:26px}.project-dialog-heading{justify-content:space-between;align-items:start;gap:20px;margin-bottom:20px;display:flex}.project-dialog-heading h3{letter-spacing:-.8px;margin:5px 0 0;font-size:clamp(20px,3vw,30px)}.project-close{border:1px solid var(--line);width:38px;height:38px;color:var(--ink);background:0 0;border-radius:50%;flex:0 0 38px;font-size:25px}.project-comparison{aspect-ratio:16/10;background:#162528;border-radius:14px;width:100%;position:relative;overflow:hidden}.project-comparison>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.project-side-label{color:#fff;background:#0c1e25cc;border-radius:99px;padding:6px 10px;font-size:11px;font-weight:700;position:absolute;top:14px}.project-side-label.before{left:14px}.project-side-label.after{right:14px}.project-slider-line{pointer-events:none;background:#fff;width:2px;position:absolute;top:0;bottom:0;transform:translate(-50%)}.project-slider-line i{color:#123235;background:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:23px;font-style:normal;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 3px 16px #0005}.project-slider-label{color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-top:16px;font-size:11px;display:grid}.project-slider-label input{accent-color:#137b70;width:100%;min-height:36px;margin:0;padding:0}.project-detail-description,.project-editor-intro{color:var(--muted);font-size:13px;line-height:1.7}.project-example-note{color:var(--muted);font-size:11px;line-height:1.6}.project-dialog-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.project-photo-fields{border:0;grid-template-columns:1fr 1fr;gap:20px;min-width:0;margin:20px 0 0;padding:0;display:grid}.project-photo-field{min-width:0}.project-photo-field h4{margin:0 0 12px;font-size:15px}.project-photo-field figure{margin:0 0 16px}.project-photo-field img{object-fit:contain;background:color-mix(in srgb, var(--ink) 5%, var(--surface));border-radius:12px;width:100%;height:180px}.project-photo-field figcaption{overflow-wrap:anywhere;color:var(--muted);margin-top:6px;font-size:10px;line-height:1.5}.project-file-label{gap:9px;margin-bottom:18px;font-size:12px;font-weight:700;display:grid}.project-file-label input{border:1px solid var(--line);border-radius:8px;width:100%;min-width:0;max-width:100%;padding:10px;font-size:11px;display:block}.project-new-photo{border:1px solid #159285;border-radius:12px;padding:10px}.project-notice{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 90%, #22d3ee 10%);border-radius:10px;margin:18px 0 0;padding:12px 14px;font-size:12px;line-height:1.6}.project-showcase button:focus-visible,.project-dialog button:focus-visible,.project-dialog input:focus-visible{outline-offset:3px;outline:3px solid #13a89b}@media (max-width:1050px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.project-showcase{margin:36px 0;padding:20px}.project-section-heading{grid-template-columns:1fr;gap:16px}.project-dialog-content{padding:18px}.project-photo-fields{grid-template-columns:1fr}.project-slider-label{grid-template-columns:1fr;gap:4px}.project-slider-label span:last-child{display:none}.project-grid{gap:12px}.project-card-copy{padding:12px 3px 8px}.project-card-copy h3{font-size:14px}.project-open-hint{font-size:9px;left:8px}}@media (max-width:390px){.project-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.project-card{transition:none}}
