.hero{min-height:0;background:#f1f2f4}.hero-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding-block:50px}.hero-copy{text-align:left;padding:35px 0}.hero-name{font-size:20px;margin-bottom:22px}.hero-copy h1{font-size:clamp(42px,4.2vw,63px);line-height:1.08;letter-spacing:-2.5px}.hero-description{max-width:390px;margin:26px 0 30px}.hero-projects{display:block;width:fit-content;margin-top:25px}.hero-product{margin:0;position:relative;background:#e9ebef}.hero-product>img{width:100%;height:510px;object-fit:contain}.hero-product figcaption{background:#fff;padding:18px 22px;display:flex;flex-direction:column;gap:8px;font-size:13px}.hero-product figcaption span:first-child{font-size:9px;letter-spacing:1.6px;color:#596066}.card-art{height:260px;background:#edeef1;overflow:hidden}.card-art img{width:100%;height:100%;object-fit:contain}.portfolio-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.portfolio-heading>p{max-width:450px;font-size:15px;color:var(--muted);line-height:1.85}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-block:1px solid var(--line);padding:20px 0;margin:15px 0 32px}.gallery-filters{display:flex;flex-wrap:wrap;gap:8px}.gallery-filters button,.viewer-controls button{font:inherit;cursor:pointer;border:1px solid #cbd0d4;background:#fff;color:#333;padding:12px 16px;font-size:12px}.gallery-filters button[aria-pressed=true]{background:#111;color:#fff;border-color:#111}.gallery-filters button:hover{border-color:#111}#gallery-count{margin:0;white-space:nowrap;font-size:12px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}.gallery-card[hidden]{display:none}.gallery-open{width:100%;font:inherit;text-align:left;border:0;padding:0;background:transparent;cursor:pointer;color:inherit}.gallery-image{position:relative;display:block;background:#edeef1;aspect-ratio:1;overflow:hidden}.gallery-image img{width:100%;height:100%;object-fit:contain}.enlarge{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:34px;height:34px;background:#fff;color:#111;font-size:22px}.gallery-caption{display:block;padding-top:18px}.gallery-type{display:block;font-size:9px;letter-spacing:1.5px;color:#626a70;margin-bottom:8px}.gallery-title{display:block;font-weight:600;font-size:14px;line-height:1.5}.gallery-open:hover .gallery-title{text-decoration:underline}button:focus-visible{outline:3px solid #5488b8;outline-offset:4px}.viewer-active{overflow:hidden}#image-viewer{padding:0;border:0;width:min(1050px,calc(100% - 40px));max-width:1050px;max-height:94dvh;background:#f0f1f3;color:#111}#image-viewer::backdrop{background:rgb(0 0 0 / 80%)}.viewer-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;padding:14px 20px}.viewer-bar h2{font-size:16px;letter-spacing:0;margin:0;line-height:1.5}.viewer-close{cursor:pointer;background:white;color:#111;border:1px solid #ccc;font-size:18px;width:44px;height:44px;flex-shrink:0}#viewer-image{width:100%;height:min(70dvh,750px);object-fit:contain}.viewer-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;padding:12px 20px}#viewer-position{font-size:12px;color:#596066}
@media(max-width:1000px){.hero-layout{gap:30px}.hero-product>img{height:460px}.hero-copy h1{font-size:48px}.header nav{gap:20px}.gallery-grid{gap:25px 18px}.portfolio-heading{gap:35px}}
@media(max-width:700px){.hero-layout{grid-template-columns:1fr;gap:26px;padding-block:36px}.hero-copy{padding:0}.hero-copy h1{font-size:46px;letter-spacing:-2px}.hero-description{max-width:340px;margin:22px 0 26px}.hero-product>img{height:360px}.hero-product figcaption{padding:15px 18px}.hero-name{font-size:17px;margin-bottom:16px}.hero-projects{margin-top:23px}.portfolio-heading{grid-template-columns:1fr;gap:0}.portfolio-heading>p{margin:0 0 22px}.gallery-toolbar{align-items:flex-start;flex-direction:column;gap:15px}.gallery-filters button{padding:12px;font-size:11px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.gallery-title{font-size:12px}.gallery-type{font-size:8px;letter-spacing:.8px}.gallery-caption{padding-top:12px}.enlarge{width:28px;height:28px;font-size:18px;bottom:8px;right:8px}.header nav{gap:17px}.viewer-bar{padding:12px}.viewer-bar h2{font-size:14px}#image-viewer{width:calc(100% - 20px)}.viewer-controls{padding:12px}.card-art{height:260px}}
