:root{--bg:#0b0b0b;--panel:#111;--panel2:#171717;--line:#292929;--text:#f0f0ee;--muted:#969694;--soft:#c7c7c3;--accent:#d7d7d2;--green:#a8c3aa;--max:1320px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.topline{height:3px;background:#e6e6e1}.section-wrap{width:min(var(--max),calc(100% - 80px));margin-inline:auto}.site-header{height:82px;padding:0 max(40px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:rgba(11,11,11,.94);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:9px;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.08em}.brand-mark{font-size:28px;letter-spacing:-.1em}.brand-name{font-size:17px;letter-spacing:.08em}.reg{font-size:9px;vertical-align:top;margin-left:2px}.main-nav{display:flex;gap:38px;color:#b9b9b5;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.main-nav a:hover,.footer-links a:hover{color:#fff}.header-actions{display:flex;align-items:center;gap:22px}.language-switch{position:relative;font-size:10px;letter-spacing:.12em;color:#aaa}.language-switch span{display:none}.language-switch select{appearance:none;background:transparent;border:0;color:#eee;padding:8px 18px 8px 4px;cursor:pointer;outline:none}.language-switch:after{content:'⌄';position:absolute;right:2px;top:5px;pointer-events:none}.language-switch option{background:#111}.header-book{border:1px solid #666;padding:12px 16px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;transition:.2s}.header-book:hover{background:#eee;color:#111}.header-book span{margin-left:15px}.menu-toggle{display:none;background:none;color:#fff;border:0;font-size:20px}.hero{padding-top:82px}.hero-kicker,.eyebrow{font-size:10px;letter-spacing:.18em;color:#aaa;text-transform:uppercase}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#9db19e;margin-right:9px;box-shadow:0 0 12px #9db19e}.hero-title-row{display:flex;justify-content:space-between;align-items:flex-end;padding:34px 0 38px}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(54px,8.5vw,120px);line-height:.91;letter-spacing:-.085em;margin:0;font-weight:800}.hero-outline{-webkit-text-stroke:1px #ddd;color:transparent}.hero-side-note{width:220px;margin:0 7% 9px 20px}.side-index{font-size:10px;color:#777;letter-spacing:.15em}.hero-side-note p,.section-intro,.artist-copy p,.contact-copy>p{font-size:14px;line-height:1.8;color:#aaa}.hero-image-wrap{height:clamp(270px,42vw,540px);position:relative;overflow:hidden;background:linear-gradient(120deg,#1a1a1a,#090909 55%,#242424);border:1px solid #292929}.hero-image-art{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#393939 0,#181818 26%,#0b0b0b 72%)}.hero-watermark{font-family:Manrope,sans-serif;font-size:clamp(180px,36vw,480px);font-weight:800;letter-spacing:-.13em;color:rgba(255,255,255,.045);transform:translateX(-2%);user-select:none}.hero-image-caption{position:absolute;left:30px;top:28px;font-size:9px;letter-spacing:.18em;color:#888}.hero-image-bottom{position:absolute;bottom:22px;left:28px;right:28px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;color:#b7b7b1}.hero-foot{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;padding:20px 0 0;color:#888;font-size:9px;letter-spacing:.16em}.hero-foot a{text-align:center;font-size:23px;color:#eee}.hero-foot span:last-child{text-align:right}.portfolio{padding-top:150px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:45px}.section-heading h2,.contact h2{font:800 clamp(38px,6vw,78px)/.96 Manrope,sans-serif;letter-spacing:-.075em;margin:18px 0 0}.section-heading h2 em,.contact h2 em{font-style:normal;color:#888}.section-intro{max-width:315px;margin:0 2% 7px 30px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;margin-bottom:24px}.filter-chip{border:1px solid #333;background:transparent;color:#999;padding:9px 14px;border-radius:2px;font-size:10px;letter-spacing:.08em;cursor:pointer;transition:.2s}.filter-chip:hover,.filter-chip.active{background:#e7e7e2;color:#111;border-color:#e7e7e2}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 18px;min-height:140px}.work-card{min-width:0;cursor:pointer}.work-media{aspect-ratio:4/5;background:linear-gradient(140deg,#222,#101010);position:relative;overflow:hidden;border:1px solid #262626}.work-media img,.work-media video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.7,.2,1);filter:grayscale(100%)}.work-card:hover .work-media img,.work-card:hover .work-media video{transform:scale(1.035)}.media-type{position:absolute;left:12px;top:12px;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.65);padding:7px 9px;font-size:8px;letter-spacing:.13em;text-transform:uppercase;z-index:2}.work-meta{display:flex;justify-content:space-between;gap:12px;padding:13px 1px 0}.work-meta h3{font:600 15px Manrope,sans-serif;margin:0 0 5px}.work-meta p{font-size:10px;color:#888;margin:0;letter-spacing:.08em;text-transform:uppercase}.work-number{font-size:10px;color:#777}.gallery-empty{grid-column:1/-1;min-height:220px;border:1px dashed #333;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#999;padding:35px}.empty-cross{font-size:24px;color:#777;margin-bottom:16px}.gallery-empty strong{font:600 14px Manrope,sans-serif;color:#ddd}.gallery-empty p{font-size:12px;margin:8px 0 0;color:#888}.portfolio-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:34px;padding-top:16px;font-size:9px;letter-spacing:.15em;color:#777}.artist{padding-top:170px}.artist-label{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px}.artist-number{font-size:10px;color:#777;letter-spacing:.12em}.artist-content{display:grid;grid-template-columns:1fr .6fr;align-items:end;padding:55px 8% 70px 0}.artist-content h2{font:800 clamp(70px,12vw,150px)/.82 Manrope,sans-serif;letter-spacing:-.1em;margin:0}.artist-content h2 span{color:#888}.artist-copy{max-width:360px}.artist-copy p{font-size:15px}.artist-location{font-size:9px!important;letter-spacing:.13em;margin:30px 0!important}.text-link{display:inline-block;border-bottom:1px solid #777;padding-bottom:10px;font-size:11px;letter-spacing:.08em}.artist-rule{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding-top:15px;color:#777;font-size:9px;letter-spacing:.15em}.contact{padding-top:160px;padding-bottom:125px}.contact-head{border-top:1px solid var(--line);padding-top:18px}.contact h2{font-size:clamp(44px,7vw,92px);margin-top:28px}.contact-grid{display:grid;grid-template-columns:.75fr 1fr;gap:10%;margin-top:56px}.contact-copy>p{max-width:390px;margin:0 0 28px}.contact-button{display:flex;justify-content:space-between;align-items:center;max-width:350px;padding:19px 20px;background:#eee;color:#111;font-size:10px;font-weight:700;letter-spacing:.12em}.contact-button:hover{background:#cfcfca}.contact-details{display:flex;gap:30px;flex-wrap:wrap;margin-top:48px}.contact-details div{display:flex;flex-direction:column;gap:8px}.detail-label{font-size:8px;color:#777;letter-spacing:.15em}.contact-details strong{font-size:11px;font-weight:500;color:#ddd}.map-frame{height:330px;position:relative;filter:grayscale(1);border:1px solid #333}.map-frame iframe{width:100%;height:100%;border:0}.map-caption{position:absolute;bottom:0;left:0;background:#111;padding:9px 12px;font-size:8px;letter-spacing:.15em;color:#bbb}.site-footer{border-top:1px solid var(--line);padding-top:25px;padding-bottom:30px;display:flex;align-items:center;justify-content:space-between}.footer-brand .brand-mark{font-size:23px}.footer-brand .brand-name{font-size:14px}.footer-mid{display:flex;gap:25px;color:#777;font-size:8px;letter-spacing:.12em}.footer-links{display:flex;gap:20px;color:#aaa;font-size:8px;letter-spacing:.13em}.media-modal{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:50;display:none;align-items:center;justify-content:center;padding:50px}.media-modal.open{display:flex}.modal-close{position:absolute;right:25px;top:15px;background:none;border:0;color:white;font-size:38px;cursor:pointer}.modal-content{max-width:min(900px,90vw);max-height:85vh;text-align:center}.modal-content img,.modal-content video{max-width:100%;max-height:75vh;object-fit:contain}.modal-content h3{font:600 17px Manrope,sans-serif}.modal-content p{font-size:12px;color:#aaa}.admin-body{min-height:100vh}.admin-shell{width:min(1120px,calc(100% - 40px));margin:55px auto}.admin-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:28px}.admin-top h1{font:800 30px Manrope,sans-serif;letter-spacing:-.06em;margin:0}.admin-top p{font-size:10px;color:#888;letter-spacing:.15em;margin:7px 0 0}.admin-top a{font-size:11px;color:#aaa}.admin-grid{display:grid;grid-template-columns:360px 1fr;gap:22px;align-items:start}.admin-panel{background:#111;border:1px solid #292929;padding:23px}.admin-panel h2{font:700 17px Manrope,sans-serif;margin:0 0 8px}.admin-panel .sub{font-size:12px;line-height:1.6;color:#888;margin:0 0 22px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px}.field label{font-size:10px;color:#aaa;letter-spacing:.08em;text-transform:uppercase}.field input,.field textarea,.field select{width:100%;background:#090909;border:1px solid #333;border-radius:2px;color:#eee;padding:12px;outline:none}.field textarea{min-height:84px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:#aaa}.field select option{background:#111}.file-drop{border:1px dashed #555;padding:20px;text-align:center;display:block;cursor:pointer;color:#bbb;font-size:12px}.file-drop input{display:none}.preview-box{margin-top:12px;background:#080808;min-height:120px;display:flex;align-items:center;justify-content:center;color:#777;font-size:11px;overflow:hidden}.preview-box img,.preview-box video{max-width:100%;max-height:250px;display:block}.check-row{display:flex;gap:9px;align-items:center;color:#bbb;font-size:11px;margin:15px 0}.btn{border:1px solid #666;background:#eee;color:#111;padding:12px 16px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.btn:hover{background:#ccc}.btn-dark{background:transparent;color:#ddd;border-color:#444}.btn-danger{background:transparent;color:#e0a4a4;border-color:#704747}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-row{display:flex;gap:8px;flex-wrap:wrap}.notice{padding:12px;background:#171717;border-left:2px solid #999;color:#aaa;font-size:11px;line-height:1.6;margin:14px 0}.notice.success{border-color:#8cba91}.notice.error{border-color:#c77}.hidden{display:none!important}.admin-list-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.admin-list-head h2{font:700 18px Manrope,sans-serif;margin:0}.admin-count{font-size:10px;color:#888}.admin-work-list{display:flex;flex-direction:column;gap:10px}.admin-work{display:grid;grid-template-columns:84px 1fr auto;gap:14px;align-items:center;border:1px solid #2b2b2b;padding:10px;background:#0c0c0c}.admin-thumb{width:84px;height:95px;background:#222;object-fit:cover}.admin-work h3{font-size:13px;margin:0 0 6px}.admin-work p{font-size:10px;color:#888;margin:0 0 6px}.status{font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:#aaa}.status.published{color:#a8c3aa}.admin-work-actions{display:flex;gap:6px;flex-direction:column}.admin-work-actions button{font-size:9px;padding:8px}.login-wrap{max-width:440px;margin:12vh auto}.login-wrap .admin-panel{padding:30px}.login-mark{font:800 34px Manrope,sans-serif;letter-spacing:-.1em;margin-bottom:22px}.config-details{font-size:11px;color:#9d9d98;line-height:1.65;margin-top:12px}.admin-empty{text-align:center;padding:40px 15px;border:1px dashed #333;color:#888;font-size:12px}.saving-line{height:3px;background:#333;margin-top:14px;overflow:hidden}.saving-line span{display:block;width:0;height:100%;background:#ddd;transition:width .2s}.language-note{font-size:9px;color:#777;line-height:1.5;margin-top:8px}
@media(max-width:850px){.section-wrap{width:calc(100% - 38px)}.site-header{padding:0 19px;height:70px}.main-nav{gap:18px}.hero{padding-top:55px}.hero-title-row{align-items:flex-start;flex-direction:column;gap:24px}.hero-side-note{margin:0;width:min(290px,85%)}.portfolio{padding-top:100px}.section-heading{align-items:flex-start;flex-direction:column;gap:18px}.section-intro{margin:0;max-width:420px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.artist{padding-top:110px}.artist-content{grid-template-columns:1fr;gap:32px;padding:45px 0}.artist-copy{max-width:500px}.contact{padding-top:110px;padding-bottom:85px}.contact-grid{grid-template-columns:1fr;gap:38px}.map-frame{height:280px}.admin-grid{grid-template-columns:1fr}.admin-shell{margin:30px auto}.site-footer{gap:22px;flex-wrap:wrap}.footer-mid{order:3;width:100%;justify-content:space-between}}
@media(max-width:560px){.main-nav{display:none;position:absolute;top:69px;left:0;right:0;background:#101010;padding:22px;flex-direction:column;border-bottom:1px solid #333}.main-nav.open{display:flex}.header-actions{gap:10px}.header-book{padding:10px;font-size:8px}.menu-toggle{display:block}.hero h1{font-size:clamp(47px,14vw,74px)}.hero-image-wrap{height:290px}.hero-image-bottom{left:13px;right:13px;font-size:7px}.hero-image-caption{left:15px;top:17px}.gallery-grid{gap:19px 10px}.work-meta h3{font-size:12px}.work-meta p{font-size:8px}.filter-chip{padding:8px 10px;font-size:9px}.artist-content h2{font-size:78px}.contact-details{gap:20px}.contact-details div{min-width:40%}.footer-mid{font-size:7px;gap:8px}.footer-links{gap:12px}.admin-work{grid-template-columns:65px 1fr}.admin-thumb{width:65px;height:78px}.admin-work-actions{grid-column:1/-1;flex-direction:row;justify-content:flex-end}.admin-top h1{font-size:25px}}

.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}


/* 444 TATTO v1.3 — authentication helper */
.text-action{display:inline-block;margin-top:14px;padding:8px 0;border:0;background:transparent;color:var(--muted,#9a9a9a);font:inherit;font-size:11px;letter-spacing:.08em;text-align:left;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.text-action:hover{color:var(--text,#f4f4f4)}
.text-action:disabled{opacity:.55;cursor:wait}
