:root{--ink:#18252a;--muted:#647176;--paper:#fbfaf5;--peach:#ff8e78;--mint:#b9dfcd;--yellow:#ffd34f;--blue:#88c9d8;--line:#d9ddd8}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.68 system-ui,-apple-system,"Segoe UI",sans-serif;overflow-wrap:anywhere}a{color:#145b68;text-underline-offset:4px}.wrap{width:min(1120px,calc(100% - 42px));margin:auto}.skip{position:absolute;left:12px;top:12px;transform:translateY(-190%);background:#fff;padding:10px;z-index:50}.skip:focus{transform:none}.head{background:var(--paper);border-bottom:1px solid var(--line)}.head-in{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font-weight:850;text-decoration:none;color:var(--ink);letter-spacing:.02em}.brand:before{content:"";display:inline-block;width:18px;height:18px;border-radius:50% 50% 50% 8px;background:var(--peach);margin-right:10px;transform:rotate(-12deg)}.nav{display:flex;gap:10px 22px;flex-wrap:wrap}.nav a{text-decoration:none;font-weight:700;color:var(--ink)}.hero{padding:92px 0 72px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:58px;align-items:center}.eyebrow{font-size:.76rem;text-transform:uppercase;letter-spacing:.15em;font-weight:850;color:#246c78}h1{font-size:clamp(3.3rem,7vw,6.6rem);line-height:.93;letter-spacing:-.055em;margin:.16em 0 .3em}.lead{font-size:1.25rem;color:var(--muted);max-width:760px}.portrait-shape{aspect-ratio:1;border-radius:58% 42% 53% 47%/43% 58% 42% 57%;background:linear-gradient(145deg,var(--peach),var(--yellow));display:grid;place-items:center;box-shadow:25px 24px 0 var(--mint);font-size:clamp(3rem,8vw,6rem);font-weight:900;color:#fff}.section{padding:72px 0}.section-title{font-size:clamp(2rem,4vw,3.5rem);line-height:1;margin:0 0 30px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project{background:#fff;border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;min-height:310px;box-shadow:0 18px 50px rgba(32,55,56,.08)}.project:nth-child(3n+1){background:#fff0eb}.project:nth-child(3n+2){background:#eaf6f0}.project .tag{font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em}.project h2{font-size:1.8rem;line-height:1.15;margin:auto 0 16px}.project p{color:var(--muted)}.partner{margin-top:36px;background:var(--ink);color:#fff;padding:32px;border-radius:26px}.partner p{color:#d7e3e4}.partner a{color:#ffd34f;font-weight:850}.crumbs{padding:16px 0;font-size:.9rem;color:var(--muted)}.crumbs span{padding:0 10px}.page-head{padding:64px 0;background:linear-gradient(135deg,#ffd9cf,#fff1bd)}.page-head h1{max-width:900px}.case{padding:64px 0}.case-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:42px;align-items:start}.case-copy{background:#fff;border:1px solid var(--line);padding:clamp(26px,4vw,46px);border-radius:30px}.case-copy h2{font-size:2rem;line-height:1.15;margin-top:0}.case-copy p{color:#46575d}.case-media{position:sticky;top:24px}.case-media img,.gallery img{width:100%;height:auto;display:block;border-radius:30px;border:1px solid var(--line);background:#fff}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.notes{display:grid;gap:16px}.note{padding:26px;background:#fff;border:1px solid var(--line);border-left:8px solid var(--peach)}.note h2{margin:0 0 8px}.note p{color:var(--muted)}.foot{background:#18252a;color:#fff;padding:46px 0}.foot-in{display:flex;justify-content:space-between;gap:26px}.foot a{color:#fff}.foot-links{display:flex;gap:12px 20px;flex-wrap:wrap}.error{min-height:62vh;display:grid;place-items:center;padding:48px 0}.error-box{background:#fff;border:1px solid var(--line);padding:42px;border-radius:30px;width:min(650px,100%);box-shadow:20px 20px 0 var(--mint)}.error-code{font-size:clamp(5rem,16vw,9rem);font-weight:900;line-height:.8;color:var(--peach)}@media(max-width:820px){.head-in,.nav{flex-direction:column;align-items:flex-start}.head-in{padding:18px 0}.hero-grid,.case-grid{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.portrait-shape{width:min(330px,80vw);justify-self:center}.case-media{position:static}.foot-in{flex-direction:column}}@media(max-width:540px){body{font-size:16px}.wrap{width:min(100% - 28px,1120px)}.hero,.section,.case{padding:48px 0}h1{font-size:3rem}.page-head h1{font-size:2.55rem}.project,.case-copy,.partner,.error-box{padding:23px;border-radius:20px}.gallery{grid-template-columns:1fr}}
