:root{--ink:#1e1e1b;--purple:#6d5ce7;--line:#dedbd4;--paper:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;width:100%}
.gallery-header{display:flex;align-items:center;justify-content:space-between;width:min(1180px,calc(100% - 64px));margin:auto;padding:28px 0;border-bottom:1px solid var(--line)}
.gallery-logo{font-size:45px;font-weight:900;letter-spacing:-5px}.gallery-logo span{font-size:10px;letter-spacing:-.4px}
.back-link{padding:13px 18px;border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:700}
main{width:min(1180px,calc(100% - 64px));margin:auto}
.gallery-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:50px;align-items:end;padding:85px 0 65px}
.gallery-intro>p{grid-column:1/-1;margin:0;color:var(--purple);font-size:11px;font-weight:900;letter-spacing:.18em}
.gallery-intro h1{margin:0;font-size:clamp(56px,8vw,110px);line-height:.88;letter-spacing:-.075em;font-weight:500}.gallery-intro h1 span{color:#87827b}
.gallery-intro>div{padding-bottom:8px}.gallery-intro>div p{max-width:430px;margin:0 0 25px;color:#67635d;font-size:17px;line-height:1.65}.gallery-intro>div a,.gallery-close a{display:inline-flex;padding:17px 22px;border-radius:999px;background:var(--ink);color:#fff;font-size:13px;font-weight:800}
.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:100px}
.demo-project{display:grid;grid-template-columns:1fr auto;gap:18px;padding:22px;border:1px solid var(--line);border-radius:25px;background:#f3f1ec;transition:transform .2s,box-shadow .2s}
.demo-project:hover{transform:translateY(-4px);box-shadow:0 22px 55px #241d1517}
.demo-number{align-self:center;font-size:11px;font-weight:900;letter-spacing:.15em}.demo-project>img{grid-column:1/-1;height:440px;border-radius:15px;object-fit:cover;box-shadow:0 18px 34px #1a17131c}
.demo-project>div{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:end;gap:6px 20px;padding:2px 2px 0}.demo-project h2{margin:0;font-size:28px;letter-spacing:-.04em}.demo-project p{grid-column:1;margin:0;color:#69645e;font-size:13px}.demo-project b{grid-column:2;grid-row:1/3;align-self:center;padding:12px 15px;border-radius:999px;background:#1f1f1c;color:#fff;font-size:11px}
.tone-red{background:#f2d3c8}.tone-blue{background:#d9e4ef}.tone-violet{background:#dfdcf2}.tone-gold{background:#eadcbf}.tone-green{background:#dce7cf}.tone-stone{background:#ddd9d2}.tone-rose{background:#f0dce1}.tone-plum{background:#dfd5e2}.tone-earth{background:#e7d8ca}.tone-sage{background:#dce2d5}
.gallery-close{display:grid;grid-template-columns:1fr 1.2fr auto;align-items:end;gap:30px;margin-bottom:85px;padding:52px;border-radius:24px;background:#20201d;color:#fff}.gallery-close p{margin:0;color:#b9b5ae;font-size:13px}.gallery-close h2{margin:0;font-size:clamp(32px,4vw,52px);line-height:1;letter-spacing:-.05em;font-weight:500}.gallery-close a{background:#fff;color:#20201d;white-space:nowrap}
.gallery-footer{display:flex;justify-content:space-between;width:min(1180px,calc(100% - 64px));margin:auto;padding:27px 0 40px;border-top:1px solid var(--line);color:#6d6962;font-size:11px}
@media(max-width:760px){.gallery-header,main,.gallery-footer{width:calc(100% - 28px)}.gallery-logo{font-size:36px}.back-link{padding:11px 13px;font-size:11px}.gallery-intro{grid-template-columns:1fr;gap:28px;padding:60px 0 45px}.gallery-intro>p{grid-column:auto}.gallery-intro h1{font-size:clamp(49px,15vw,75px)}.gallery-intro>div p{font-size:16px}.demo-grid{grid-template-columns:1fr;gap:16px;padding-bottom:65px}.demo-project{padding:15px;border-radius:19px}.demo-project>img{height:360px}.demo-project>div{grid-template-columns:1fr}.demo-project b{grid-column:1;grid-row:auto;justify-self:start;margin-top:8px}.gallery-close{grid-template-columns:1fr;align-items:start;padding:31px 24px;margin-bottom:55px}.gallery-close a{justify-content:center}.gallery-footer{gap:20px;flex-wrap:wrap}}
