*{box-sizing:border-box}
html{scroll-behavior:smooth}body{margin:0;background:#f4f2ed;color:#0b0d10;font-family:Arial,Helvetica,sans-serif}
button,input{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.topbar{height:76px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ddd9d1;position:sticky;top:0;background:#f4f2edee;backdrop-filter:blur(12px);z-index:20}
.brand{display:flex;align-items:center;gap:11px;color:#111;text-decoration:none;min-width:260px}.company-logo{width:auto;height:46px;max-width:170px;object-fit:contain;display:block}.mark{width:40px;height:40px;border-radius:50%;place-items:center;background:#0b0d10;color:#fff;font-size:11px;font-weight:800}
.brand strong,.brand small{display:block}.brand strong{font-size:11px;letter-spacing:.15em}.brand small{font-size:8px;letter-spacing:.2em;color:#777;margin-top:4px}
.main-nav{display:flex;align-items:center;justify-content:center;gap:28px;margin-left:auto;margin-right:28px}.main-nav a{color:#242424;text-decoration:none;font-size:12px;font-weight:600;letter-spacing:.04em;position:relative;padding:28px 0}.main-nav a:after{content:"";position:absolute;left:0;right:0;bottom:21px;height:1px;background:#0b0d10;transform:scaleX(0);transform-origin:center;transition:transform .2s}.main-nav a:hover:after{transform:scaleX(1)}.actions{display:flex;gap:7px}.actions button,.outline{height:40px;padding:0 16px;border:1px solid #0b0d10;background:transparent;border-radius:3px}.dark{background:#0b0d10!important;color:#fff!important}
.hero{min-height:620px;padding:75px 9%;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:40px;background:linear-gradient(135deg,#f6f4ef,#e9e5dd)}
label{font-size:10px;letter-spacing:.22em;font-weight:800;color:#b38a4b}.hero h1{font:400 clamp(50px,7vw,88px)/.98 Georgia,serif;letter-spacing:-.05em;margin:17px 0 25px}.hero h1 i{color:#777;font-style:normal}.hero p{max-width:560px;color:#666;line-height:1.8}
.big{height:48px;padding:0 20px;border:0;border-radius:3px;margin:15px 8px 0 0}.cover{position:relative;width:min(390px,75%);margin:auto;filter:drop-shadow(0 25px 30px #0002)}.cover img{width:100%;display:block}.cover span{position:absolute;right:-25px;bottom:25px;width:80px;height:80px;border-radius:50%;background:#0b0d10;color:#fff;display:grid;place-content:center;text-align:center;font-size:9px}.cover span b{font:28px Georgia,serif}
#catalogue{padding:85px 7% 100px}.heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.heading h2{font:400 44px Georgia,serif;margin:7px 0}.heading>span{font-size:11px;color:#777}
.toolbar{display:flex;gap:8px;margin-bottom:22px}.toolbar input{height:46px;max-width:430px;flex:1;border:1px solid #ddd9d1;padding:0 14px;outline:0;background:#fff}.toolbar button{height:46px;border:1px solid #ddd9d1;background:transparent;padding:0 16px}.toolbar button.active{background:#0b0d10;color:#fff}
#catalogueGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 18px}#catalogueGrid.compact{grid-template-columns:repeat(6,1fr);gap:12px}.card{background:#fff;border:1px solid #ddd9d1;cursor:pointer;transition:.2s}.card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #0001}
.page{aspect-ratio:2480/3505;overflow:hidden;background:#e9e7e1}.page img{width:100%;height:100%;object-fit:contain;display:block}.info{height:45px;padding:0 12px;display:flex;justify-content:space-between;align-items:center;font-size:10px}.info span:last-child{color:#777}
footer{border-top:1px solid #ddd9d1;padding:25px 7%;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#777;display:flex;justify-content:space-between}
.viewer{position:fixed;inset:0;background:#08090b;color:#fff;z-index:100;display:flex;flex-direction:column}.viewerHeader{height:64px;flex:0 0 64px;background:#08090b;color:#fff;border-bottom:1px solid #ffffff18;display:flex;align-items:center;justify-content:space-between;padding:0 18px}.viewerHeader strong,.viewerHeader small{display:block}.viewerHeader strong{font-size:11px}.viewerHeader small{font-size:10px;color:#999;margin-top:3px}.viewerHeader button{height:36px;min-width:36px;border:1px solid #ffffff20;background:#ffffff0d;color:#fff;margin-left:4px}
#viewerStage{flex:1;min-height:0;overflow:auto;display:flex;justify-content:center;align-items:center;padding:20px 85px 90px}#viewerImage{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;transition:transform .12s}
.arrow{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:70px;border:1px solid #ffffff20;background:#ffffff0d;color:#fff;font:52px Georgia,serif;z-index:4}.left{left:15px}.right{right:15px}
.strip{position:absolute;bottom:0;left:0;right:0;height:72px;background:#000d;display:flex;overflow-x:auto;padding:7px}.strip>div{display:flex;gap:7px;margin:auto;min-width:max-content}.mini{width:43px;height:57px;padding:2px;background:#111;border:2px solid transparent;opacity:.5}.mini.active{opacity:1;border-color:#fff}.mini img{width:100%;height:100%;object-fit:contain}
#contentsDrawer{position:fixed;right:0;top:0;bottom:0;width:min(410px,90vw);background:#f4f2ed;z-index:200;padding:35px;overflow:auto;box-shadow:-20px 0 60px #0003}#contentsDrawer>button{float:right;border:0;background:none;font-size:20px}#contentsDrawer h2{font:400 40px Georgia,serif;margin:8px 0 25px}.contentBtn{display:flex;justify-content:space-between;width:100%;padding:14px 0;border:0;border-bottom:1px solid #ddd9d1;background:none;text-align:left;font-size:11px}.contentBtn span:last-child{color:#777}
#drawerOverlay{position:fixed;inset:0;background:#0006;z-index:150}
@media(max-width:1000px){.main-nav{gap:16px;margin-right:15px}.main-nav a{font-size:11px}.brand{min-width:210px}.company-logo{max-width:135px;height:42px}#catalogueGrid{grid-template-columns:repeat(3,1fr)}#catalogueGrid.compact{grid-template-columns:repeat(5,1fr)}}@media(max-width:700px){.topbar{padding:0 4%}.main-nav{display:none}.company-logo{max-width:145px;height:40px}.brand{min-width:auto}.hero{grid-template-columns:1fr;padding:55px 7%}.cover{width:65%;margin-top:30px}#catalogue{padding:60px 5%}#catalogueGrid{grid-template-columns:repeat(2,1fr);gap:13px}#catalogueGrid.compact{grid-template-columns:repeat(3,1fr)}#viewerStage{padding:20px 45px 80px}.arrow{width:38px;height:55px;font-size:38px}.heading h2{font-size:35px}footer{display:block;line-height:2}}