@font-face{font-family:DIN;src:url('DIN2014-Narrow.woff2') format('woff2');font-display:swap;font-weight:100 900}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#101010;font-family:DIN,'Arial Narrow','Liberation Sans Narrow',Arial,sans-serif;font-stretch:condensed}button,input{font:inherit}a{color:inherit;text-decoration:none}.shell{max-width:1600px;margin:auto;padding:0 clamp(22px,5vw,86px)}header{height:112px;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;align-items:center}.brand,.footer-brand{font-size:34px;font-weight:900;letter-spacing:-1.5px}.brand-dot,.footer-brand span{color:#cf1724}.header-right{display:flex;align-items:center;gap:35px}.eyebrow,.kicker,.textbtn,.account,.back,.footer-links,.footer-bottom,.hero-line,.card-top,.gallery-head,.file-info{font-size:13px;letter-spacing:1.5px;font-weight:700}.textbtn{border:0;background:transparent;cursor:pointer}.hero{padding:65px 0 95px}.hero-top{display:flex;justify-content:space-between}.account{border-bottom:1px solid}.hero h1{font-size:clamp(84px,13vw,205px);line-height:.78;letter-spacing:-.055em;margin:90px 0 42px;font-weight:900}.hero h1 em{font-style:normal;color:#cf1724}.hero>p{font-size:clamp(18px,2vw,26px);line-height:1.35}.hero-line{margin-top:110px;border-top:1px solid #aaa;padding-top:15px;display:flex;justify-content:space-between}.section-heading,.gallery-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid #111;margin-bottom:24px}.section-heading h2{font-size:36px;letter-spacing:-1px;margin:0 0 12px}.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.category-card{border:1px solid #dedede;min-height:440px;padding:26px;display:flex;flex-direction:column;transition:background .2s,transform .2s}.category-card:hover{background:#f6f6f6;transform:translateY(-3px)}.card-top{display:flex;justify-content:space-between}.arrow{font-size:28px;line-height:1}.logo-area{flex:1;display:flex;justify-content:center;align-items:center;padding:45px 20px}.logo-area img{max-width:85%;max-height:190px;object-fit:contain}.card-bottom{border-top:1px solid #ddd;padding-top:20px}.card-bottom h3{font-size:clamp(27px,3vw,43px);letter-spacing:-1px;margin:0}.card-bottom p{font-size:20px;margin:4px 0 0;color:#555}.back{padding:35px 0}.back a:hover,.footer-links a:hover{text-decoration:underline}.inner{padding:35px 0 100px;min-height:60vh}.inner h1{font-size:clamp(65px,10vw,130px);letter-spacing:-.04em;line-height:.9;margin:35px 0}.inner h2{font-size:29px;margin-top:55px}.category-head{display:flex;gap:35px;align-items:center;margin:35px 0 55px}.category-head img{width:160px;max-height:120px;object-fit:contain}.category-head h1{font-size:clamp(50px,6vw,95px);margin:0}.category-head p{font-size:24px;margin:10px 0}.upload{border:2px dashed #aaa;padding:24px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}.upload-label{display:flex;gap:20px;align-items:center;cursor:pointer;flex:1;min-width:220px}.upload-plus{font-size:54px;line-height:1}.upload-label strong{display:block;font-size:25px}.upload-label small{display:block;font-size:15px;color:#666}.upload input[type=file]{max-width:100%;font-size:14px}.primary{border:0;background:#111;color:white;padding:18px 24px;font-size:17px;letter-spacing:1px;font-weight:800;cursor:pointer;display:flex;justify-content:space-between;gap:30px}.primary:hover{background:#cf1724}.primary:disabled{opacity:.4;cursor:not-allowed}.gallery-head{margin-top:65px}.gallery-head h2{margin:0 0 10px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.photo{border:1px solid #ddd;min-width:0}.photo>a{display:block;aspect-ratio:4/3;background:#f4f4f4}.photo img{width:100%;height:100%;object-fit:cover}.photo-meta{display:flex;justify-content:space-between;padding:13px;gap:8px}.photo-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:210px}.photo-meta small{display:block;color:#777;margin-top:5px}.delete-form button{border:0;background:none;font-size:28px;cursor:pointer}.empty{padding:100px 20px;text-align:center;background:#f8f8f8;font-size:27px}.empty small{font-size:18px;color:#777}.auth{max-width:640px;margin:85px auto 130px}.auth h1{font-size:clamp(75px,11vw,130px);line-height:.85;letter-spacing:-.05em;margin:40px 0}.auth p,.inner>p,.legal p{font-size:21px;line-height:1.45}.stack{display:grid;gap:20px;margin-top:40px}.stack label{display:grid;gap:8px;font-size:14px;letter-spacing:1px;font-weight:700}.stack input{border:1px solid #999;padding:15px;font-size:20px;width:100%;border-radius:0;background:white}.stack .primary{margin-top:10px}.hint{font-size:16px!important;color:#666}.narrow{max-width:460px}.notice{background:#f4f4f4;border-left:4px solid #cf1724;padding:16px}.userlist{margin-top:30px;max-width:460px}.userlist>div{border-bottom:1px solid #ddd;padding:12px 0;display:flex;justify-content:space-between}.userlist span{color:#888;font-size:12px}.legal{max-width:850px}.legal h2{font-size:25px}.legal strong{font-weight:800}footer{border-top:2px solid #111;margin-top:110px;padding:45px 0 25px}.footer-brand{font-size:54px}.footer-links{display:flex;gap:30px;margin:28px 0 65px}.footer-bottom{border-top:1px solid #ddd;padding-top:18px;display:flex;justify-content:space-between;color:#666}@media(max-width:750px){header{height:82px}.brand{font-size:29px}.eyebrow{display:none}.hero{padding-top:45px}.hero h1{margin:80px 0 38px;font-size:clamp(62px,15vw,120px)}.hero-line{margin-top:70px}.category-grid{grid-template-columns:1fr}.category-card{min-height:350px}.logo-area{padding:30px}.logo-area img{max-height:145px}.category-head{flex-direction:column;align-items:flex-start}.category-head img{width:130px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.upload{display:block}.upload input[type=file]{margin:20px 0}.upload .primary{width:100%}.footer-bottom{gap:15px;flex-direction:column}.auth{margin-top:65px}}@media(max-width:480px){.gallery{grid-template-columns:1fr}.section-heading h2{font-size:27px}.hero h1{font-size:15vw}.footer-links{flex-wrap:wrap;gap:16px}.category-card{padding:20px}.auth h1{font-size:17vw}}

.caption-fields{flex-basis:100%;width:100%;display:grid;gap:12px}.caption-field{display:grid;gap:6px;font-size:13px;font-weight:700;letter-spacing:.4px;overflow-wrap:anywhere}.caption-field textarea{font:inherit;font-size:17px;font-weight:400;letter-spacing:0;width:100%;resize:vertical;border:1px solid #aaa;padding:12px;border-radius:0;background:#fff}.photo-meta strong{white-space:normal;overflow-wrap:anywhere;max-width:none;line-height:1.3}.photo-meta>div{min-width:0;flex:1}
