:root{--ink:#191919;--muted:#686868;--line:#dededb;--soft:#f5f5f2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:white;color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.04em}h1{font-size:clamp(42px,5.4vw,78px);line-height:1.04}h2{font-size:clamp(32px,4vw,54px);line-height:1.08}h3{font-size:25px;line-height:1.2}p{line-height:1.65;color:var(--muted)}header{height:80px;position:sticky;top:0;z-index:20;background:#fffe;display:flex;align-items:center;gap:20px;padding:0 5%;border-bottom:1px solid #eee}.brand{font-size:20px;font-weight:900;line-height:.95}.brand small{font-size:10px;letter-spacing:4px}header>.button{margin-left:auto;font-size:12px;padding:12px 16px}#menuButton{border:0;background:none;font-size:25px}.button{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--ink);border-radius:14px;background:var(--ink);color:white;padding:16px 25px;font-weight:700;font-size:14px;min-height:44px}.button:hover{background:#373737}.button.outline{background:transparent;color:var(--ink)}#menu{position:fixed;top:80px;left:5%;z-index:30;background:white;border:1px solid var(--line);border-radius:20px;box-shadow:0 15px 40px #0002;padding:12px;width:240px}#menu a{display:block;padding:14px;border-radius:12px}#menu a:hover{background:var(--soft)}.hero{max-width:1440px;margin:auto;position:relative;isolation:isolate;min-height:720px;padding:64px 6% 36px}.hero-background{position:absolute;inset:16px;border:1px solid var(--line);border-radius:32px;background:#ededeb;z-index:-1}.hero-background span{position:absolute;right:35px;top:45%;font-size:10px;letter-spacing:2px;color:#999}.hero-content{max-width:1130px;margin:auto}.tag{display:inline-block;border:1px solid #d0d0cc;background:#ffffff80;padding:12px 16px;border-radius:12px;font-size:11px;letter-spacing:1px;margin-bottom:26px}.hero p{max-width:490px;font-size:17px;margin-top:25px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-bottom{margin-top:70px;text-align:center}.hero-bottom p{max-width:none;font-size:13px}.hero-bottom div{margin-top:25px;font-size:20px;font-weight:800;color:#777}.section{max-width:1200px;margin:auto;padding:84px 32px}.soft{background:var(--soft);border-radius:32px}.intro{max-width:640px;margin:0 auto 34px;text-align:center}.intro p{margin-top:20px;font-size:16px}.intro .button{margin-top:24px}.tabs{display:flex;gap:8px;border:1px solid var(--line);border-radius:999px;background:white;padding:7px;max-width:590px;margin:0 auto 30px}.tabs button{flex:1;border:0;border-radius:999px;background:none;padding:13px 18px;white-space:nowrap;font-size:14px}.tabs [aria-selected=true]{background:var(--ink);color:white}.feature{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:40px;border:1px solid var(--line);border-radius:24px;background:#e7e7e3;padding:32px}.placeholder{background:#e9e9e6;border:1px solid #d8d8d4;border-radius:24px;aspect-ratio:1.25;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden}.placeholder span{font-size:10px;letter-spacing:2px;color:#92928b;text-align:center}.feature .placeholder{background:#d9d9d5;aspect-ratio:1.1}.eyebrow{display:block;font-size:11px;letter-spacing:1px;color:#a32932;margin:20px 0 12px}.feature h3{font-size:33px}.feature p{font-size:15px;margin:18px 0 24px}.text-link{font-size:14px;font-weight:700}.notes{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:36px}.notes h3{font-size:19px}.notes p{font-size:14px;margin-top:10px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:35px}.cards h3{margin-top:20px}.cards p{font-size:14px;margin-top:12px}.options{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.options button{background:white;border:1px solid var(--line);border-radius:22px;text-align:left;padding:26px}.options b{display:block;font-size:19px}.options span{display:block;margin-top:12px;color:var(--muted);font-size:13px;line-height:1.5}.filters{display:flex;gap:7px;justify-content:center;overflow:auto;margin-bottom:25px;scrollbar-width:none}.filters button{background:white;border:1px solid var(--line);border-radius:999px;padding:10px 17px;white-space:nowrap;font-size:12px}.filters .active{background:var(--ink);color:white;border-color:var(--ink)}#group{max-width:740px;margin:auto;touch-action:pan-y}.set-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.set-heading h3{font-size:17px}.set-heading span{font-size:8px;letter-spacing:1px;color:#888}.group-images{display:grid;grid-template-columns:1fr 1fr;gap:8px}.group-images .placeholder{aspect-ratio:1}.group-images .wrap{grid-column:1/-1;aspect-ratio:3.6}.controls{display:flex;align-items:center;justify-content:center;gap:45px;margin:20px 0 12px}.controls button{width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;background:none;font-size:21px}.controls button:disabled{opacity:.3;cursor:default}#counter{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.hint,.disclaimer{text-align:center;font-size:12px}.disclaimer{font-size:10px;margin-top:15px}dialog{position:fixed;border:1px solid var(--line);border-radius:24px;padding:32px;width:calc(100% - 32px);max-width:510px;max-height:90dvh;overflow:auto}dialog::backdrop{background:#0006}dialog h2{font-size:30px;margin:12px 0}dialog p{font-size:13px}#close{position:absolute;top:10px;right:14px;background:#eee;border:0;border-radius:50%;width:32px;height:32px;font-size:23px}form label{display:block;font-size:12px;margin-top:18px}form input,form select,form textarea{display:block;width:100%;background:white;border:1px solid #ccc;border-radius:12px;padding:12px;margin-top:7px}form textarea{min-height:85px}form .button{width:100%;margin-top:22px}#status{margin-top:12px;color:#416335}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,#group:focus-visible{outline:3px solid #ba3038;outline-offset:4px}[hidden]{display:none!important}@media(max-width:767px){html{scroll-padding-top:70px}header{height:68px;padding:0 20px;gap:12px}.brand{font-size:15px}.brand small{font-size:9px;letter-spacing:2.6px}header>.button{font-size:11px;padding:10px 12px}#menuButton{font-size:22px}#menu{top:68px}.hero{min-height:calc(100svh - 68px);padding:40px 27px 26px}.hero-background{inset:8px;border-radius:24px}.hero-background span{top:auto;bottom:145px;right:20px;font-size:8px}.tag{font-size:9px;padding:10px 12px;margin-bottom:23px}h1{font-size:42px;line-height:1.08;letter-spacing:-1.7px}.hero p{font-size:14px;margin-top:20px}.actions{flex-direction:column;align-items:flex-start;margin-top:25px;gap:10px}.button{font-size:13px;padding:13px 20px;border-radius:12px}.hero-bottom{margin-top:75px}.hero-bottom p{font-size:11px}.hero-bottom div{font-size:13px;margin-top:22px}.section{padding:50px 20px}.soft{border-radius:24px;margin-inline:8px;padding-inline:18px}.intro{margin-bottom:26px}h2{font-size:31px;letter-spacing:-1.2px}.intro p{font-size:13px;margin-top:16px}.tabs{padding:6px;gap:3px;margin-bottom:20px}.tabs button{font-size:11px;padding:11px 12px}.feature{display:block;padding:19px;border-radius:22px}.placeholder{border-radius:18px}.feature .placeholder{aspect-ratio:1.2}.feature h3{font-size:26px}.feature p{font-size:13px;margin:15px 0 20px}.notes{grid-template-columns:1fr;gap:16px;margin-top:24px}.notes h3{font-size:17px}.notes p{font-size:12px;margin-top:6px}.cards{grid-template-columns:1fr;gap:27px}.cards .placeholder{aspect-ratio:1.5}.cards h3{font-size:24px}.cards p{font-size:13px}.options{grid-template-columns:1fr;gap:10px}.options button{padding:20px;border-radius:18px}.options b{font-size:17px}.options span{font-size:12px}.filters{justify-content:flex-start;margin-bottom:20px;gap:6px}.filters button{font-size:11px;padding:9px 14px}.set-heading h3{font-size:15px}.set-heading span{font-size:7px}.group-images .placeholder span{font-size:8px;letter-spacing:1px}.controls{margin-top:16px}.hint{font-size:11px}.disclaimer{font-size:9px}#work{padding-bottom:28px}dialog{padding:28px 22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the supplied portrait composition intact inside the first card. */
.hero{min-height:0;aspect-ratio:586/1157;padding-top:64px;max-width:620px}.hero-background{background:#fff;overflow:hidden}.hero-background img{width:100%;height:100%;object-fit:fill;display:block}.hero-content{position:relative}.hero h1{font-size:48px;max-width:430px}.hero p{font-size:15px;max-width:360px;color:#333}.hero .tag{background:#ffffffdf}.hero .outline{background:#ffffffdf}.hero-background span{display:none}@media(min-width:768px){.hero{max-width:1200px;aspect-ratio:auto;min-height:780px;padding-top:100px}.hero-background img{object-fit:contain;object-position:right center}.hero-background{background:white}.hero h1{font-size:64px;max-width:560px}.hero p{max-width:450px;font-size:17px}}@media(max-width:767px){.hero{min-height:0;aspect-ratio:586/1157;padding:32px 27px 24px}.hero h1{font-size:36px;line-height:1.06;max-width:300px}.hero p{font-size:12px;line-height:1.5;max-width:280px;margin-top:15px}.hero .tag{margin-bottom:18px;padding:9px 11px;font-size:8px}.hero .actions{margin-top:18px;gap:8px}.hero .button{padding:11px 16px;font-size:12px;min-height:40px}}
.hero h1{text-shadow:0 1px 0 #fff,1px 0 0 #fff,-1px 0 0 #fff}.hero-content>p{background:transparent;border-radius:0;padding:0;max-width:370px}@media(max-width:767px){.hero-content>p{max-width:280px;font-size:12px}}

.brand{display:flex;align-items:center;flex-shrink:0}.brand img{display:block;width:150px;height:auto;object-fit:contain}@media(max-width:767px){.brand img{width:116px}}

#process .process-photo { overflow: hidden; }
#process .process-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }

#process .original-product { background: #111; }
#process .original-product img { object-fit: contain; }
#process .paired-proof { display: grid; grid-template-rows: minmax(0, 1fr) 28%; gap: 6px; background: #111; padding: 8px; }
#process .paired-proof img { object-fit: contain; min-height: 0; }

.finish-photo { overflow: hidden; }
.finish-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }

#process .supplied-process { aspect-ratio: 700 / 467; }

.group-images .placeholder{overflow:hidden}.group-images img{display:block;width:100%;height:100%;object-fit:cover}

#work .group-images img{object-fit:contain}

.brand img{mix-blend-mode:normal}
