:root{--bg:#FAF8F4;--bg2:#F1EDE6;--ink:#14140F;--soft:#4A4A45;--line:rgba(20,20,15,.14);--laiton:#9C7A45;--serif:"Book Antiqua","Palatino Linotype","Palatino","URW Palladio L",Georgia,serif;--sans:"Jost",-apple-system,Helvetica,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--bg);color:var(--soft);font-weight:300;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3{font-family:var(--serif);color:var(--ink);font-weight:500;line-height:1.12;letter-spacing:.002em}button{font-family:inherit;cursor:pointer}.wrap{max-width:1240px;margin:0 auto;padding:0 56px}.eyebrow{font-family:var(--sans);font-size:11px;letter-spacing:.34em;text-transform:uppercase;font-weight:400;color:var(--laiton)}.serif-it{font-style:italic}header{position:fixed;top:0;left:0;width:100%;z-index:900;padding:22px 56px;display:flex;justify-content:space-between;align-items:center;background:#faf8f4d1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:padding .4s}header.scrolled{padding:14px 56px}.brand{display:flex;align-items:center;gap:14px}.brand img{height:34px;width:auto}.brand .wm{font-family:var(--sans);font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);font-weight:400;padding-top:2px}nav.main{display:flex;align-items:center;gap:22px}.spec-nav{display:flex;gap:18px}.spec-nav a,.util a{position:relative;display:inline-block;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;padding:4px 5px;color:var(--ink);font-weight:400;white-space:nowrap;transform-origin:center;will-change:transform;transition:transform .5s var(--ease),color .4s var(--ease)}.util{display:flex;gap:16px;padding-left:20px;border-left:1px solid var(--line)}.util a{color:var(--soft)}.spec-nav a .lbl,.util a .lbl{transition:opacity .8s var(--ease)}.spec-nav a:after,.util a:after{content:attr(data-t);position:absolute;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:600;font-variation-settings:"wght" 600;opacity:0;transition:opacity .8s var(--ease);pointer-events:none}.spec-nav a:hover,.util a:hover{transform:scale(1.16);color:var(--ink)}.spec-nav a:hover .lbl,.util a:hover .lbl{opacity:0}.spec-nav a:hover:after,.util a:hover:after{opacity:1}.spec-nav a.active .lbl,.util a.active .lbl{opacity:0}.spec-nav a.active:after,.util a.active:after{opacity:1}.fnav a{transition:color .3s}.fnav a:hover{color:var(--ink)}.hdr-cta{display:inline-flex;align-items:center;gap:8px;padding:10px 17px;border:1px solid var(--ink);border-radius:30px;font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink);white-space:nowrap;transition:background .4s var(--ease),color .4s var(--ease)}.hdr-cta:hover{background:var(--ink);color:var(--bg)}.hdr-cta .dot{width:5px;height:5px;border-radius:50%;background:var(--laiton)}.hdr-cta:hover .dot{background:var(--bg2)}.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:6px}.burger span{width:24px;height:1.5px;background:var(--ink);transition:.4s var(--ease)}main{min-height:60vh}.route{animation:routefade .7s var(--ease)}@keyframes routefade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.rv{opacity:0;transform:translateY(30px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}.rv.in{opacity:1;transform:none}.imgwrap{position:relative;overflow:hidden}.imgwrap img{filter:grayscale(1) contrast(1.04) brightness(.99);transform:scale(1.12);transition:transform 1.6s var(--ease);width:100%;height:100%;object-fit:cover}.imgwrap.in img{transform:scale(1)}.imgwrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg);transform:translateY(0);transition:transform 1.15s var(--ease)}.imgwrap.in:after{transform:translateY(-101%)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--laiton);outline-offset:3px;border-radius:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.rv{opacity:1!important;transform:none!important}.imgwrap img{transform:none!important}.imgwrap:after{transform:translateY(-101%)!important}}.hero{padding:190px 0 90px;position:relative}.hero .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}.hero h1{font-size:clamp(40px,5.4vw,80px);max-width:13ch}.hero h1 .serif-it{color:var(--laiton)}.hero .sub{margin-top:30px;font-size:19px;max-width:42ch;color:var(--soft)}.hero .meta{margin-top:42px;display:flex;gap:40px;flex-wrap:wrap}.hero .meta .m .v{font-family:var(--serif);font-size:30px;color:var(--ink)}.hero .meta .m .k{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--laiton);margin-top:4px}.hero .visual{aspect-ratio:4/5}.hero .visual img{height:100%}section{padding:120px 0}.statement .big{font-family:var(--serif);font-size:clamp(26px,3.4vw,46px);line-height:1.26;color:var(--ink);max-width:24ch;font-weight:500}.statement .big .serif-it{color:var(--laiton)}.statement .cols{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:64px;max-width:880px}.statement .cols p{font-size:17.5px;max-width:42ch}.dlist .drow{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:54px 0;cursor:pointer}.dlist .dmain h3{font-size:clamp(26px,3vw,40px);transition:transform .5s var(--ease)}.dlist .dmain p{font-size:16px;margin-top:12px;color:var(--soft);max-width:40ch}.dlist .drow:hover .dmain h3{transform:translate(12px)}.dlist .drow:nth-child(2n) .dmain{order:2}.dlist .drow:nth-child(2n):hover .dmain h3{transform:translate(-12px)}.dlist .dthumb{aspect-ratio:16/10}.band{height:78vh;min-height:520px;position:relative;overflow:hidden}.band.short{height:56vh;min-height:380px}.band .px{position:absolute;top:-12%;right:0;bottom:-12%;left:0;will-change:transform}.band .px img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05) brightness(.96)}.band .quote{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 40px;z-index:2}.band .quote p{font-family:var(--serif);font-style:italic;color:#fff;font-size:clamp(26px,3.6vw,48px);max-width:18ch;line-height:1.22;text-shadow:0 2px 30px rgba(0,0,0,.45)}.band:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0f0f0c47}.method .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:64px}.method .step{transition:transform .55s var(--ease);transform-origin:left center}.method .step:hover{transform:scale(1.07)}.method .step h3{font-size:clamp(24px,2.3vw,30px);margin:0 0 14px;white-space:nowrap}.method .step p{font-size:18.5px;max-width:34ch}.engage .egrid{display:grid;grid-template-columns:repeat(4,1fr);gap:44px}.engage .eitem{padding-top:20px;position:relative}.engage .eitem:before{content:"";position:absolute;top:0;left:0;width:28px;height:2px;background:var(--laiton)}.engage .eitem h3{font-size:clamp(20px,2vw,24px);margin-bottom:10px}.engage .eitem p{font-size:15px;color:var(--soft);max-width:32ch}.cta{text-align:center;background:var(--bg2)}.cta h2{font-size:clamp(34px,5vw,68px);max-width:16ch;margin:0 auto}.cta h2 .serif-it{color:var(--laiton)}.btn{display:inline-flex;align-items:center;gap:12px;margin-top:44px;padding:17px 38px;border:1px solid var(--ink);border-radius:40px;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);background:none;transition:background .5s var(--ease),color .5s var(--ease)}.btn:hover{background:var(--ink);color:var(--bg)}.btn .dot{width:6px;height:6px;border-radius:50%;background:var(--laiton)}.phead{padding:172px 0 54px}.phead h1{font-size:clamp(44px,7vw,104px)}.phead .sub{margin-top:24px;font-size:20px;max-width:50ch;color:var(--soft)}.bio .row{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}.bio .visual{aspect-ratio:3/4}.bio h2{font-size:clamp(26px,3vw,38px);margin-bottom:22px;max-width:16ch}.bio h2 .serif-it{color:var(--laiton)}.bio p{font-size:18px;margin-bottom:18px;max-width:52ch}.facts{margin-top:38px}.facts .f{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:15px 0;font-size:16px;align-items:baseline}.facts .f b{font-family:var(--sans);font-weight:400;color:var(--ink);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.bio .profile-link{display:inline-block;margin-top:28px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--laiton);text-decoration:none;transition:opacity .3s}.bio .profile-link:hover{text-decoration:underline;text-underline-offset:3px}.sec-h{font-size:clamp(26px,3vw,40px);margin:16px 0 8px;max-width:20ch}.dtypes{display:grid;grid-template-columns:1fr 1fr;gap:16px 60px;margin-top:40px;max-width:980px}.dtypes li{list-style:none;font-family:var(--serif);font-size:18px;color:var(--ink);padding-left:24px;position:relative;line-height:1.4}.dtypes li:before{content:"—";position:absolute;left:0;color:var(--laiton)}.exp{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;padding:80px 0}.exp:nth-child(2n) .txt{order:2}.exp .visual{aspect-ratio:5/4}.exp h2{font-size:clamp(28px,3.4vw,44px);margin:0 0 18px;max-width:14ch}.exp h2 a{transition:color .35s}.exp h2 a:hover{color:var(--laiton)}.exp p{font-size:17.5px;margin-bottom:24px;max-width:46ch}.exp .more{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);display:inline-flex;gap:8px;align-items:center}.exp .more .ar{transition:transform .4s var(--ease)}.exp .more:hover .ar{transform:translate(6px)}.spec-intro{padding:80px 0 40px}.spec-intro .row{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.spec-intro h2{font-size:clamp(24px,2.8vw,38px);max-width:16ch}.spec-intro h2 .serif-it{color:var(--laiton)}.spec-intro p{font-size:18.5px;margin-bottom:18px;max-width:50ch;line-height:1.65}.services{padding:60px 0}.cadres{padding:30px 0 20px}.cadres .lead-p{font-size:18px;line-height:1.65;color:var(--soft);max-width:60ch;margin-top:14px}.faq{padding:30px 0 110px}.faq .faqlist{margin-top:34px;max-width:840px}.faq .faqitem{padding:26px 0;border-top:1px solid var(--line)}.faq .faqitem h3{font-size:clamp(19px,2.1vw,23px);margin-bottom:10px}.faq .faqitem p{font-size:16.5px;line-height:1.75;color:var(--soft);max-width:66ch}.services .eyebrow{display:block;margin-bottom:40px}.svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 70px}.svc{display:flex;gap:18px;padding:18px 0;align-items:baseline}.svc .si{font-family:var(--serif);font-style:italic;color:var(--laiton);font-size:16px;min-width:28px}.svc .sl{font-family:var(--serif);font-size:24px;color:var(--ink);line-height:1.3}.svc .sd{font-size:15px;color:var(--soft);margin-top:4px}.contact{padding:172px 0 120px}.contact h2{font-size:clamp(40px,6vw,92px);max-width:13ch}.contact h2 .serif-it{color:var(--laiton)}.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:72px;margin-top:64px}.cinfo .blk{padding:18px 0}.cinfo .t{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--laiton);margin-bottom:7px}.cinfo .v{font-family:var(--serif);font-size:23px;color:var(--ink)}.cinfo .v a{transition:color .3s}.cinfo .v a:hover{color:var(--laiton)}.cform input,.cform textarea{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);color:var(--ink);padding:15px 0;font-family:var(--sans);font-size:15px;font-weight:300;margin-bottom:24px;outline:none;transition:border-color .4s}.cform input::placeholder,.cform textarea::placeholder{color:#9a978f}.cform input:focus,.cform textarea:focus{border-color:var(--laiton)}.cform .consent{display:flex;gap:11px;align-items:flex-start;margin:-2px 0 26px;font-size:13px;line-height:1.55;color:var(--soft);cursor:pointer}.cform .consent input{width:16px;height:16px;padding:0;margin:2px 0 0;border:none;flex:0 0 auto;accent-color:var(--laiton);cursor:pointer}.cform .consent a{color:var(--laiton);text-decoration:underline;text-underline-offset:2px}.form-status{font-size:14px;line-height:1.55;margin-top:4px}.form-status.ok{color:#4a6b4a}.form-status.err{color:#a24a3b}.map{margin-top:70px;height:460px;overflow:hidden;border:1px solid var(--line)}.map iframe{width:100%;height:100%;border:0;filter:grayscale(1) contrast(1.04)}.map-consent{width:100%;height:100%;border:0;background:var(--bg2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:24px;cursor:pointer;transition:background .3s}.map-consent:hover{background:#ece7df}.map-consent .mc-title{font-family:var(--serif);font-size:24px;color:var(--ink)}.map-consent .mc-sub{font-size:14px;color:var(--soft)}.map-consent .mc-note{font-size:12px;color:#8a877f;max-width:38ch;margin-top:4px;line-height:1.5}.map-consent .mc-cta{margin-top:16px;display:inline-flex;align-items:center;gap:10px;border:1px solid var(--ink);border-radius:30px;padding:12px 26px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);transition:background .4s var(--ease),color .4s var(--ease)}.map-consent:hover .mc-cta{background:var(--ink);color:var(--bg)}.map-consent .mc-cta .dot{width:5px;height:5px;border-radius:50%;background:var(--laiton)}.legal{padding:172px 0 120px}.legal .updated{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--laiton);margin-bottom:18px}.legal h1{font-size:clamp(40px,6vw,84px);margin-bottom:8px}.legal .doc{max-width:760px;margin-top:40px}.legal h2{font-size:clamp(21px,2.3vw,27px);margin:46px 0 12px}.legal p{font-size:16px;line-height:1.8;margin-bottom:14px;color:var(--soft)}.legal p strong{color:var(--ink);font-weight:400}.legal a{color:var(--laiton);text-decoration:underline;text-underline-offset:2px}.legal .todo{color:#a24a3b;font-style:italic}.notfound{padding:200px 0 140px;text-align:center}.notfound h1{font-size:clamp(48px,8vw,104px);margin-top:14px}.notfound h1 .serif-it{color:var(--laiton)}.notfound .nf-sub{font-size:19px;color:var(--soft);margin-top:22px}footer{background:var(--bg2);padding:80px 0 40px}footer .top{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:30px}footer .fb{display:flex;align-items:center;gap:14px}footer .fb img{height:40px}footer .fb .wm{font-family:var(--sans);font-size:14px;letter-spacing:.34em;text-transform:uppercase;color:var(--ink)}footer .fnav{display:flex;gap:24px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;flex-wrap:wrap}footer .fbot{margin-top:56px;font-size:10.5px;letter-spacing:.06em;color:#8a877f;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}footer .fbot a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}@media (max-width:1120px){.wrap{padding:0 28px}header{padding:16px 28px}nav.main{position:fixed;top:0;right:0;height:100vh;width:min(86vw,360px);background:var(--bg);flex-direction:column;justify-content:center;align-items:flex-start;gap:30px;padding:0 34px;transform:translate(100%);transition:transform .5s var(--ease);box-shadow:-20px 0 60px #00000014}nav.main.open{transform:translate(0)}.spec-nav{flex-direction:column;gap:22px}.spec-nav a,.util a{text-align:left;font-size:15px;letter-spacing:.1em;white-space:normal}.spec-nav a:after,.util a:after{justify-content:flex-start}.spec-nav a:hover,.util a:hover{transform:none}.util{flex-direction:column;gap:18px;padding-left:0;border-left:none;border-top:1px solid var(--line);padding-top:24px}.burger{display:flex;z-index:10}.burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.hero{padding:150px 0 70px}.hero .grid,.statement .cols,.method .steps,.bio .row,.exp,.cgrid,.spec-intro .row,.svc-grid{grid-template-columns:1fr}.engage .egrid{grid-template-columns:1fr 1fr;gap:32px}.dtypes{grid-template-columns:1fr;gap:14px}.hero .visual{order:-1;aspect-ratio:4/3;max-height:48vh}.dlist .drow{grid-template-columns:1fr;gap:24px}.dlist .drow:nth-child(2n) .dmain{order:0}.exp:nth-child(2n) .txt{order:0}.method .step h3{white-space:normal}section{padding:80px 0}.phead{padding:140px 0 40px}.legal{padding:140px 0 60px}}
