:root{--ink:#1d1c19;--cream:#f4efe5;--paper:#fffdf8;--wood:#b86b31;--orange:#df7b32;--line:rgba(29,28,25,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;line-height:1.55}button,input,textarea{font:inherit}button,a{color:inherit}a{text-decoration:none}.section{padding:110px max(5vw,24px)}.header{height:84px;padding:0 max(5vw,24px);display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--line);position:absolute;z-index:10;width:100%}.logo{font-weight:800;letter-spacing:.08em;display:flex;align-items:center;gap:10px}.logo span{display:grid;place-items:center;width:33px;height:33px;border:1px solid;border-radius:50%;font-family:Prata}.nav{display:flex;gap:28px;margin-left:auto;font-size:14px}.nav a:hover{color:var(--wood)}.button{border:0;background:var(--orange);padding:16px 24px;font-weight:700;cursor:pointer;transition:.2s;color:#15120f}.button:hover{transform:translateY(-2px);background:#ee8a3c}.button--small{padding:11px 18px}.hero{min-height:760px;padding-top:145px;display:grid;grid-template-columns:1.05fr .95fr;gap:6vw;align-items:center;background:linear-gradient(115deg,#f7f3ea 0 58%,#d8c5ab 58%)}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:12px;font-weight:800;color:var(--wood)}h1,h2{font-family:Prata,Georgia,serif;font-weight:400;line-height:1.07;margin:.25em 0}h1{font-size:clamp(50px,6.5vw,94px);letter-spacing:-.03em}h1 em{color:var(--wood);font-style:normal}h2{font-size:clamp(39px,5vw,68px)}h3{line-height:1.25}.hero__lead{font-size:18px;max-width:650px;color:#58534c}.hero__actions{display:flex;gap:30px;align-items:center;margin:35px 0 65px}.text-link{border:0;background:none;font-weight:700;cursor:pointer;padding:8px 0;border-bottom:1px solid}.text-link span{margin-left:8px}.hero__facts{display:flex;gap:48px}.hero__facts div{display:flex;flex-direction:column}.hero__facts strong{font:32px Prata}.hero__facts span{font-size:13px;color:#6b655d}.hero__visual{position:relative;align-self:stretch;display:flex;align-items:end}.hero__visual img{width:100%;height:87%;object-fit:cover;object-position:center}.hero__badge{position:absolute;left:-40px;bottom:12%;background:var(--orange);width:130px;height:130px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(-8deg)}.hero__badge span{font-size:12px}.hero__badge strong{font-family:Prata}.marquee{overflow:hidden;background:var(--ink);color:#fff;padding:19px 0;white-space:nowrap;font-size:14px;letter-spacing:.15em}.marquee div{width:max-content;animation:move 24s linear infinite}.marquee i{color:var(--orange);margin:0 25px}@keyframes move{to{transform:translateX(-35%)}}.section-heading{max-width:780px;margin-bottom:55px}.section-heading>p:last-child{color:#6a645c}.section-heading--row{display:flex;max-width:none;justify-content:space-between;align-items:end}.section-heading--row>p{max-width:430px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article{padding:38px 28px;border-right:1px solid var(--line)}.service-grid article:last-child{border:0}.service-grid span{color:var(--wood);font-size:12px}.service-grid h3{font:27px Prata}.service-grid p{font-size:14px;color:#6a645c}.works{background:#eee7db;padding-bottom:100px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:0 max(2vw,16px)}.work-card{position:relative;overflow:hidden;background:#ddd;aspect-ratio:1/1.08;cursor:pointer}.work-card:nth-child(7n+1),.work-card:nth-child(7n+5){grid-column:span 2;aspect-ratio:2/1.08}.work-card img{width:100%;height:100%;object-fit:cover;transition:.55s}.work-card:hover img{transform:scale(1.04)}.work-card div{position:absolute;inset:auto 0 0;padding:45px 20px 18px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.75));transform:translateY(3px)}.work-card h3{margin:0;font-size:17px}.work-card p{font-size:12px;margin:4px 0 0;opacity:.8}.work-card.is-hidden{display:none}.center{text-align:center;margin-top:35px}.button--outline{background:transparent;border:1px solid var(--ink)}.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;align-items:center}.about__portrait{position:relative;background:#ddd;height:650px}.about__portrait img{width:100%;height:100%;object-fit:cover;object-position:center 22%}.about__portrait span{position:absolute;right:-35px;bottom:45px;background:var(--orange);padding:22px 28px;font:20px Prata}.about blockquote{font:clamp(23px,2.4vw,36px)/1.35 Prata;margin:35px 0;border-left:3px solid var(--orange);padding-left:28px}.about__content>p{color:#645e56;max-width:700px}.cases{background:#22211e;color:#f8f2e8}.section-heading--light .eyebrow{color:#e69050}.case-list article{display:grid;grid-template-columns:70px 1fr auto;gap:25px;padding:35px 0;border-top:1px solid rgba(255,255,255,.16);align-items:start}.case-list article>span{color:#d08348}.case-list h3{font:27px Prata;margin:0 0 8px}.case-list p{margin:0;color:#aaa49c;max-width:770px}.case-list b{font-size:13px;border:1px solid rgba(255,255,255,.25);padding:8px 12px}.process ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.process li{padding:30px;background:var(--cream);min-height:220px}.process li>span{font:34px Prata;color:var(--orange)}.process h3{font-size:20px;margin-top:35px}.process p{font-size:14px;color:#6a645c}.cta{background:var(--orange);display:flex;justify-content:space-between;align-items:center}.cta h2{font-size:clamp(40px,5vw,72px)}.cta .eyebrow{color:#4e2a12}.button--dark{background:var(--ink);color:#fff;min-width:220px}.contacts{display:grid;grid-template-columns:.65fr 1.35fr;gap:6vw;align-items:center}.contacts a{text-decoration:underline;text-underline-offset:4px}.contacts iframe{border:0;width:100%;height:420px;filter:grayscale(.25)}footer{background:#171714;color:#eee7dc;padding:55px max(5vw,24px);display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:30px}footer p,footer small{color:#969088;font-size:13px}footer div{display:flex;gap:25px}.logo--light{color:#fff}dialog{width:min(560px,calc(100% - 30px));border:0;padding:45px;background:#fffdf8;box-shadow:0 20px 100px #0007}dialog::backdrop{background:#16140fc9;backdrop-filter:blur(3px)}dialog h2{font-size:42px}dialog>p{color:#6a645c}.modal-close{position:absolute;right:18px;top:12px;background:none;border:0;font-size:34px;cursor:pointer}form{display:grid;gap:16px;margin-top:25px}label{display:grid;gap:7px;font-size:13px;font-weight:700}input,textarea{width:100%;border:1px solid #cfc7bb;background:#fff;padding:13px;outline:none}input:focus,textarea:focus{border-color:var(--orange)}.consent{grid-template-columns:20px 1fr;align-items:start;font-weight:500;color:#6b655d}.consent input{width:17px}.hp{position:absolute;left:-9999px}.form-status{margin:0;font-size:14px}.form-status.error{color:#a52b21}.form-status.success{color:#267044}@media(max-width:950px){.nav{display:none}.hero{grid-template-columns:1fr;padding-top:130px;background:#f7f3ea}.hero__visual{height:530px}.hero__badge{left:10px}.service-grid{grid-template-columns:1fr 1fr}.service-grid article:nth-child(2){border-right:0}.gallery{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr}.about__portrait{max-width:600px}.contacts{grid-template-columns:1fr}.process ol{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr 1fr}}@media(max-width:620px){.section{padding:75px 20px}.header{height:72px}.header .button{display:none}h1{font-size:47px}.hero{padding-top:110px}.hero__actions{align-items:flex-start;flex-direction:column;margin-bottom:45px}.hero__facts{gap:18px}.hero__facts strong{font-size:24px}.hero__visual{height:430px}.hero__badge{width:105px;height:105px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--line)}.section-heading--row{display:block}.gallery{grid-template-columns:1fr}.work-card,.work-card:nth-child(n){grid-column:span 1;aspect-ratio:1.18/1}.about__portrait{height:520px}.about__portrait span{right:0}.case-list article{grid-template-columns:35px 1fr}.case-list b{grid-column:2;width:max-content}.process ol{grid-template-columns:1fr}.cta{display:block}.cta .button{margin-top:25px}.contacts iframe{height:330px}footer{grid-template-columns:1fr}footer div{flex-wrap:wrap}dialog{padding:34px 22px}}
