@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{--ink:#123a31;--muted:#6c747b;--orange:#245a4e;--line:#dfe2e4;--paper:#f4f5f5}*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;color:var(--ink);background:#fff;font:15px/1.55 'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}header{height:87px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.brand{font-weight:800;font-size:25px;letter-spacing:-1px;display:flex;align-items:center;gap:10px}.brand small{font-size:12px;letter-spacing:2px;border-left:1px solid #bbb;padding-left:14px;margin-left:7px}.logo{background:var(--ink);color:var(--orange);padding:0 9px;font-size:29px}nav{display:flex;align-items:center;gap:35px;font-size:13px;font-weight:600}nav button{background:white;border:1px solid var(--line);padding:10px 16px}nav b{margin-left:7px;color:var(--orange)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:570px;background:var(--ink);color:white}.hero-copy{padding:65px 8% 35px 9%}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--muted)}.hero .eyebrow{color:#ccc}h1,h2,h3{font-family:'DM Sans',Arial,sans-serif;font-weight:700;letter-spacing:-.02em}h1{font-size:clamp(40px,5vw,76px);line-height:1.05;text-transform:uppercase;letter-spacing:-.03em;margin:25px 0}h1 em{font-style:normal;color:var(--orange)}.hero p{color:#b9bfc4;font-size:16px;margin-bottom:29px}.primary{display:inline-flex;justify-content:space-between;align-items:center;gap:36px;border:0;background:var(--orange);padding:15px 21px;color:white;font-weight:700;font-size:13px}.stats{display:flex;gap:32px;border-top:1px solid #ffffff23;margin-top:42px;padding-top:20px}.stats div{display:flex;flex-direction:column}.stats b{font-family:'DM Sans',Arial;font-weight:700;font-size:30px;line-height:1}.stats span{font-size:12px;letter-spacing:1px;color:#aeb5bb;margin-top:7px}.hero-art{background:#e7e8e8;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background-image:linear-gradient(#00000005 1px,transparent 1px),linear-gradient(90deg,#00000005 1px,transparent 1px);background-size:38px 38px}.hero-art img{width:91%;max-height:440px;object-fit:contain;mix-blend-mode:multiply}.art-label{position:absolute;top:28px;left:30px;color:#6c747b;font-size:12px;letter-spacing:2px}.art-bottom{position:absolute;bottom:18px;left:30px;right:30px;display:flex;justify-content:space-between;align-items:center;color:#6c747b;font-size:12px;letter-spacing:2px}.art-bottom b{font-size:45px;color:var(--orange)}.catalog{padding:65px 4.5%}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}h2{font-size:48px;line-height:1.05;letter-spacing:-.5px;margin:8px 0 0}.section-title h2 span{color:var(--orange)}.section-title p{color:var(--muted);font-size:13px}.toolbar{display:flex;gap:12px;margin-bottom:32px}.search{flex:1;display:flex;align-items:center;background:var(--paper);padding:0 19px;border:1px solid var(--line)}.search span{font-size:27px;margin-right:13px}.search input{width:100%;border:0;background:transparent;padding:15px 0;outline:none;font-size:13px}select{border:1px solid var(--line);padding:0 16px;background:white;font-size:13px}.catalog-layout{display:grid;grid-template-columns:215px 1fr;gap:32px}aside h3{font:700 13px 'DM Sans',Arial;letter-spacing:1.5px;display:flex;justify-content:space-between;margin:0 0 17px}aside h3 span{color:var(--muted)}#categories{display:flex;flex-direction:column;gap:4px}.category{display:flex;align-items:center;justify-content:space-between;text-align:left;background:white;border:0;padding:12px;font-size:13px;color:#626a70;border-left:2px solid transparent;gap:12px}.category.active{background:#e6f0ed;border-left-color:var(--orange);color:#1b4a40;font-weight:700}.category small{font-size:12px;opacity:.65}.source-note{margin-top:30px;border-top:1px solid var(--line);padding-top:20px;font-size:13px;color:var(--muted)}.source-note b{color:var(--ink)}.results-line{display:flex;justify-content:space-between;margin-bottom:17px;font-size:13px;color:var(--muted)}.results-line button{border:0;background:transparent;color:var(--muted);font-size:13px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{border:1px solid var(--line);display:flex;flex-direction:column;transition:box-shadow .2s}.card:hover{box-shadow:0 8px 25px #14202b10}.image-box{height:220px;position:relative;background:#f1f2f2;overflow:hidden}.image-box img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:10px;transition:transform .3s}.card:hover img{transform:scale(1.04)}.fav{position:absolute;top:11px;right:11px;border:1px solid #ddd;background:white;width:30px;height:30px;border-radius:50%;font-size:18px;line-height:1;z-index:1}.fav[aria-pressed=true]{color:var(--orange)}.card-copy{padding:18px;display:flex;flex-direction:column;flex:1}.tag{font-size:12px;color:#1b4a40;letter-spacing:1px;text-transform:uppercase;font-weight:700}.card h3{font-size:19px;line-height:1.25;margin:9px 0 12px;text-transform:lowercase}.card h3::first-letter{text-transform:uppercase}.card p{font-size:13px;color:var(--muted);margin:0 0 15px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-meta{font-size:12px;color:#888;border-top:1px solid #eee;padding-top:12px;margin-top:auto}.actions{display:flex;gap:6px;margin-top:13px}.actions button{background:white;border:1px solid var(--line);padding:10px;font-size:12px;font-weight:700}.actions .choose{flex:1;background:var(--ink);color:white;border-color:var(--ink)}#empty{padding:60px;text-align:center;background:var(--paper)}.project{margin:10px 4.5% 65px;padding:40px;background:#f1f2f2;border-left:4px solid var(--orange);display:grid;grid-template-columns:1fr 1fr;gap:45px}.project p{max-width:500px;color:var(--muted);font-size:13px}.badge{font-size:12px;color:#1b4a40}footer{background:var(--ink);color:white;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 4.5%}footer p{color:#9ba4ac;font-size:12px;max-width:660px}footer>span{font-size:12px;letter-spacing:1px;white-space:nowrap}dialog{padding:0;border:0;width:min(1150px,96vw);max-height:94vh;color:var(--ink)}dialog::backdrop{background:#111a24b8;backdrop-filter:blur(5px)}.modal-top{position:sticky;top:0;z-index:3;background:white;border-bottom:1px solid var(--line);padding:14px 25px;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:1.2px}.close{border:0;background:var(--paper);width:35px;height:35px}.detail-layout,.config-layout{display:grid;grid-template-columns:1fr 1fr}.detail-media,.config-media{background:var(--paper);padding:30px}.detail-media>img,.config-media>img{width:100%;height:370px;object-fit:contain;mix-blend-mode:multiply}.detail-copy,.config-options{padding:30px}.detail-copy h2,.config-options h2{font-size:38px;margin:10px 0 20px}.detail-copy p{font-size:13px;white-space:pre-line}.detail-copy h3{font-size:22px;margin:25px 0 10px}.feature-list{font-size:13px;padding-left:18px}.feature-list li{margin-bottom:8px}table{border-collapse:collapse;width:100%;font-size:13px}td{padding:10px;border-bottom:1px solid var(--line);vertical-align:top}td:first-child{background:var(--paper);width:45%;font-weight:600}.source-link{display:block;color:var(--muted);font-size:12px;margin-top:15px;cursor:pointer}.source-preview{width:100%;margin-top:15px}.disclaimer{padding:12px;background:#e6f0ed;font-size:13px;color:#1b4a40;margin:15px 0}.config-media{position:sticky;top:64px;align-self:start}.config-media h2{font-size:32px}.config-media p{font-size:13px;color:var(--muted)}fieldset{border:0;padding:0;margin:25px 0}legend{font-weight:700;font-size:13px;margin-bottom:10px}.option{border:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:15px;margin:8px 0;cursor:pointer;font-size:13px}.option:has(input:checked){border:2px solid var(--orange);background:#f1f7f5;padding:14px}.option input{accent-color:var(--orange)}.option strong{margin-left:auto;white-space:nowrap;font-size:13px}.option small{display:block;color:var(--muted);font-size:12px}.total{background:var(--ink);color:white;padding:20px;display:flex;justify-content:space-between;align-items:center}.total small{display:block;color:#aab2b9;font-size:12px}.total b{font-size:28px}.config-options textarea{width:100%;border:1px solid var(--line);padding:12px;font:13px 'DM Sans',Arial;min-height:80px}.download{width:100%;margin-top:15px}.notice{font-size:12px;color:var(--muted)}@media(max-width:1000px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-copy{padding:45px 7%}.stats{gap:18px}.catalog-layout{grid-template-columns:180px 1fr;gap:20px}.brand small{display:none}nav{gap:20px}}@media(max-width:650px){header{height:70px;padding:0 5%}.brand{font-size:20px}nav>a{display:none}nav button{font-size:13px}.hero{grid-template-columns:1fr}.hero-copy{padding:35px 6%}h1{font-size:65px}.hero-art{min-height:280px}.hero-art img{height:260px;width:90%}.stats{margin-top:27px}.art-label{top:12px}.art-bottom{bottom:5px}.catalog{padding:40px 5%}.section-title p{display:none}h2{font-size:40px}.toolbar{flex-direction:column}select{padding:12px}.catalog-layout{display:block}aside h3,.source-note{display:none}#categories{flex-direction:row;overflow:auto;margin-bottom:25px}.category{white-space:nowrap;padding:10px;border-bottom:2px solid transparent;border-left:0}.category.active{border-bottom-color:var(--orange)}.grid{gap:10px}.image-box{height:160px}.card-copy{padding:12px}.card h3{font-size:21px}.card p{display:none}.actions{flex-direction:column}.actions button{font-size:12px}.project{margin:0 5% 40px;padding:25px;display:block}.project h2{font-size:40px}footer{display:block;padding:25px 5%}footer p{margin:18px 0}.detail-layout,.config-layout{display:block}.detail-media,.config-media{position:static;padding:20px}.detail-media>img,.config-media>img{height:250px}.detail-copy,.config-options{padding:22px}.modal-top{padding:10px 15px}.results-line{font-size:12px}}

