:root{--paper:#fbfaf7;--white:#fff;--ink:#292724;--muted:#77736d;--gold:#bd8d3e;--gold-dark:#9d702b;--line:#dedbd4;--dark:#252422;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:70px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0;font-size:14px;overflow-x:hidden}body.overlay-open,body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{object-fit:cover;width:100%;height:100%;display:block}.svg-sprite{width:0;height:0;position:absolute;overflow:hidden}.site-header{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fbfaf7f5;border-bottom:1px solid #dedbd4cc;height:72px;position:sticky;top:0}.header-inner{grid-template-columns:1fr auto 1fr auto;align-items:center;gap:44px;max-width:1360px;height:100%;margin:auto;padding:0 28px;display:grid}.wordmark{font:600 28px/1 var(--serif);letter-spacing:.035em;color:var(--gold)}.main-nav{gap:46px;display:flex}.main-nav a,.header-phone{font-size:12px;font-weight:500;transition:color .2s}.main-nav a:hover,.main-nav a:focus-visible,.header-phone:hover{color:var(--gold)}.header-phone{justify-self:end}.button{background:var(--gold);border:1px solid var(--gold);color:#fff;justify-content:center;align-items:center;min-height:48px;padding:0 34px;font-size:12px;font-weight:500;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.button:hover,.button:focus-visible{background:var(--gold-dark);border-color:var(--gold-dark)}.button:active{transform:translateY(1px)}.button--small{min-height:42px;padding:0 25px}.menu-toggle{background:0 0;border:0;width:42px;height:42px;padding:0;display:none;position:relative}.menu-toggle span{background:var(--ink);width:22px;height:1.5px;transition:all .25s;position:absolute;top:17px;left:10px}.menu-toggle span+span{top:24px}.menu-toggle.is-active span{top:21px;transform:rotate(45deg)}.menu-toggle.is-active span+span{transform:rotate(-45deg)}.hero{border-bottom:1px solid var(--line);background:var(--white);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:775px;display:grid;overflow:hidden}.hero-copy{z-index:1;flex-direction:column;align-items:flex-start;padding:95px max(4vw,44px) 38px;display:flex;position:relative}.hero h1{max-width:680px;font:500 clamp(54px,5.2vw,78px)/.98 var(--serif);letter-spacing:-.035em;margin:0 0 29px}.hero-copy>p{max-width:555px;color:var(--muted);margin:0 0 37px;font-size:13px;line-height:1.75}.hero-address{color:var(--muted);align-items:center;gap:12px;margin-top:auto;font-size:11px;font-style:normal;display:flex}.hero-address svg{fill:none;width:18px;height:18px;stroke:var(--gold);stroke-width:1.7px}.hero-visual{background:#fff;position:relative;overflow:hidden}.hero-visual img{object-fit:cover;object-position:unset;width:auto;max-width:none;height:100%;display:block}.section{padding:58px 4vw 96px}.ornament-heading{width:max-content;margin:0 auto 42px;padding:7px 28px;position:relative}.ornament-heading h2{font:500 clamp(50px,4.2vw,68px)/1 var(--serif);letter-spacing:-.03em;margin:0}.ornament-heading span{border:2px solid var(--gold);opacity:.2;border-top-color:#0000;border-bottom-color:#0000;border-radius:50%;width:56px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.services-grid{border:1px solid var(--line);max-width:1328px;margin:auto}.service-row{background:var(--white);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;min-height:286px;display:grid}.service-row:last-child{border-bottom:0}.service-row--reverse figure{order:2}.service-row figure{min-height:286px;margin:0;overflow:hidden}.service-row figure img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.service-row:hover figure img{transform:scale(1.025)}.service-info{grid-template-rows:auto auto 1fr auto;grid-template-columns:74px 1fr;align-items:start;padding:35px 55px;display:grid}.service-number{font:500 50px/1 var(--serif);color:var(--gold);grid-row:1/5}.service-info h3{font:500 44px/1 var(--serif);margin:0 0 15px}.service-info p{max-width:470px;color:var(--muted);margin:0;font-size:12px;line-height:1.55}.service-actions{align-self:end;gap:48px;display:flex}.service-actions a,.price-link{cursor:pointer;background:0 0;border:0;border-bottom:1px solid #c9ae7e;padding:0 0 6px;font-size:11px;transition:color .2s,border-color .2s}.service-actions a:hover,.service-actions a:focus-visible,.price-link:hover,.price-link:focus-visible{color:var(--gold-dark);border-color:var(--gold-dark);outline:0}.about{background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:47% 53%;min-height:560px;display:grid}.about-content{padding:55px 5.5vw 42px}.about h2{font:500 clamp(48px,4.5vw,68px)/.92 var(--serif);letter-spacing:-.035em;margin:0 0 30px}.about-content>p{max-width:590px;color:var(--muted);margin:0;font-size:12px;line-height:1.65}.about-photo{position:relative;overflow:hidden}.about-photo img{object-position:center}.about-brand{color:var(--gold);font:500 26px/1 var(--serif);letter-spacing:.06em;text-align:center;position:absolute;top:20%;right:9%}.about-brand small{margin-top:12px;font-size:16px;display:block}.trust-list{grid-template-columns:repeat(3,1fr);gap:20px;margin:55px 0 0;padding:0;list-style:none;display:grid}.trust-list li{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:11px;font-size:10px;line-height:1.45;display:flex}.trust-list svg{border:1px solid var(--gold);fill:none;width:48px;height:48px;stroke:var(--gold);stroke-width:1.3px;border-radius:50%;padding:11px}.trust-list strong{font-weight:400}.works{padding-top:54px}.works-grid{grid-template-rows:1fr 1fr;grid-template-columns:1.05fr 1fr 1.2fr 1.05fr;gap:8px;max-width:1328px;height:480px;margin:auto;display:grid}.work{cursor:zoom-in;background:0 0;border:0;padding:0;overflow:hidden}.work--one,.work--four{grid-row:span 2}.work img{transition:transform .6s,filter .25s}.work:hover img,.work:focus-visible img{filter:brightness(.95);transform:scale(1.035)}.work:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.contact{background:var(--white);border-top:1px solid var(--line);grid-template-columns:46% 44% 10%;min-height:350px;display:grid}.contact-photo{overflow:hidden}.contact-photo img{object-position:center 42%}.contact-content{flex-direction:column;justify-content:center;align-items:flex-start;padding:42px 7vw;display:flex}.contact h2{font:500 clamp(38px,3.5vw,54px)/1 var(--serif);margin:0 0 28px}.contact address,.contact-phone{color:var(--muted);align-items:center;gap:16px;margin-bottom:17px;font-size:11px;font-style:normal;display:flex}.contact svg{fill:none;width:19px;height:19px;stroke:var(--gold);stroke-width:1.7px}.contact .button{min-height:44px;margin-top:6px;padding:0 55px}.contact-leaves{position:relative;overflow:hidden}.contact-leaves:before{content:"";background:var(--gold);transform-origin:bottom;width:1px;height:280px;position:absolute;bottom:-20px;left:45%;transform:rotate(22deg)}.contact-leaves i{left:40%;bottom:var(--y);background:var(--gold);width:72px;height:1px;transform:rotate(var(--r));transform-origin:0;position:absolute}.contact-leaves i:after{content:"";border:1px solid var(--gold);border-radius:100% 0;width:10px;height:6px;position:absolute;top:-4px;left:18px}.contact-leaves i:first-child{--y:62px;--r:-2deg}.contact-leaves i:nth-child(2){--y:98px;--r:45deg}.contact-leaves i:nth-child(3){--y:136px;--r:-8deg}.contact-leaves i:nth-child(4){--y:174px;--r:51deg}.contact-leaves i:nth-child(5){--y:212px;--r:-12deg}.contact-leaves i:nth-child(6){--y:248px;--r:54deg}.site-footer{background:var(--dark);color:#b7b2a9;min-height:178px;padding-block:38px;font-size:10px;line-height:1.7}.footer-inner{grid-template-columns:1.2fr .65fr 1fr .9fr;align-items:start;gap:50px;width:calc(100% - 8vw);max-width:1328px;margin-inline:auto;display:grid}.footer-brand>span{color:var(--gold);font:500 28px/1 var(--serif);letter-spacing:.05em;display:block}.footer-brand small{margin-top:10px;display:block}.site-footer nav{flex-direction:column;gap:2px;display:flex}.site-footer nav a:hover,.site-footer a:focus-visible{color:var(--gold)}.site-footer address{font-style:normal}.footer-inner>small{place-self:center end}.modal[hidden],.lightbox[hidden]{display:none}.modal,.lightbox{z-index:50;place-items:center;display:grid;position:fixed;inset:0}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#181715b8;position:absolute;inset:0}.modal-panel{z-index:1;background:var(--paper);text-align:center;width:min(530px,100% - 40px);padding:58px;position:relative}.modal-label{color:var(--gold);letter-spacing:.17em;font-size:10px}.modal-panel h2{font:500 55px/1 var(--serif);margin:10px 0 20px}.modal-panel p{color:var(--muted);margin:0 0 28px;font-size:12px;line-height:1.7}.modal-close,.lightbox-close{cursor:pointer;background:0 0;border:0;width:42px;height:42px;position:absolute;top:18px;right:18px}.modal-close svg,.lightbox-close svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:22px;height:22px}.lightbox{background:#181715ed;padding:6vh 6vw}.lightbox img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:88vh}.lightbox-close{z-index:2;color:#fff}.service-row,.about-content,.about-photo,.work,.contact>*{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(16px)}.is-visible{opacity:1!important;transform:none!important}@media (width<=1180px){.header-inner,.main-nav{gap:25px}.hero{min-height:700px}.hero h1{font-size:57px}.service-info{grid-template-columns:58px 1fr;padding:30px 35px}.service-number{font-size:40px}.service-info h3{font-size:39px}.service-actions{gap:25px}.works-grid{height:430px}.about-content{padding-left:4vw;padding-right:4vw}}@media (width<=900px){.site-header{height:68px}.header-inner{grid-template-columns:1fr auto auto;padding:0 25px}.main-nav{background:var(--paper);flex-direction:column;align-items:center;gap:34px;height:calc(100vh - 68px);padding:60px 25px;display:none;position:fixed;top:68px;left:0;right:0}.main-nav.is-open{display:flex}.main-nav a{font:500 36px/1 var(--serif)}.header-phone,.header-inner>.button{display:none}.menu-toggle{display:block}.hero{grid-template-columns:48% 52%;min-height:650px}.hero-copy{padding:65px 32px 30px}.hero h1{font-size:46px}.hero-copy>p{font-size:11px}.section{padding-left:32px;padding-right:32px}.service-row,.service-row figure{min-height:255px}.service-info{grid-template-columns:44px 1fr;padding:26px}.service-number{font-size:33px}.service-info h3{font-size:34px}.service-info p{font-size:10px}.service-actions{gap:18px}.about{grid-template-columns:1fr 1fr}.about-content{padding:45px 32px}.about h2{font-size:48px}.trust-list{gap:8px;margin-top:38px}.works-grid{grid-template-columns:1fr 1fr 1fr;height:390px}.work--four{display:none}.contact{grid-template-columns:45% 50% 5%}.contact-content{padding:35px}.footer-inner{grid-template-columns:1fr 1fr 1fr;width:calc(100% - 64px)}.footer-inner>small{display:none}}@media (width<=640px){.header-inner{padding:0 20px}.wordmark{font-size:24px}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{min-height:510px;padding:58px 20px 30px}.hero h1{font-size:43px;line-height:.98}.hero-copy>p{font-size:12px;line-height:1.65}.hero-copy .button{min-height:50px}.hero-address{margin-top:50px}.hero-visual{justify-content:center;height:520px;min-height:0;display:flex}.section{padding:58px 20px 70px}.ornament-heading{margin-bottom:35px;padding-left:12px;padding-right:12px}.ornament-heading h2{font-size:49px}.services-grid{border:0}.service-row,.service-row--reverse{border:1px solid var(--line);flex-direction:column;min-height:0;margin-bottom:16px;display:flex}.service-row--reverse figure{order:0}.service-row figure{height:255px;min-height:255px}.service-info{grid-template-columns:45px 1fr;min-height:250px;padding:27px 23px 30px}.service-number{font-size:35px}.service-info h3{font-size:37px}.service-info p{font-size:11px}.service-actions{flex-wrap:wrap;gap:24px}.about{grid-template-columns:1fr}.about-content{padding:60px 20px}.about h2{font-size:51px}.about-content>p{font-size:12px}.trust-list{grid-template-columns:repeat(3,1fr);gap:6px}.trust-list svg{width:42px;height:42px}.about-photo{min-height:390px}.about-brand{font-size:21px}.works-grid{grid-template-rows:1.2fr 1fr 1fr;grid-template-columns:1fr 1fr;height:720px}.work--one{grid-row:span 2}.work--four{grid-row:auto;display:block}.works .ornament-heading{margin-bottom:40px}.contact{grid-template-columns:1fr}.contact-photo{height:350px}.contact-content{padding:52px 20px 60px}.contact h2{font-size:46px}.contact-leaves{display:none}.site-footer{padding-block:48px}.footer-inner{grid-template-columns:1fr 1fr;gap:36px;width:calc(100% - 40px)}.footer-inner address{grid-column:1/3}.modal-panel{padding:50px 25px}.service-row,.about-content,.about-photo,.work,.contact>*{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.site-header{-webkit-backdrop-filter:none;backdrop-filter:none;position:relative;top:auto}.hero{grid-template-columns:48% 52%;height:775px;min-height:0}.hero-visual{min-width:0;min-height:0}.service-row{height:286px;min-height:0;overflow:hidden}.service-row figure{height:286px;min-height:0}@media (width<=1180px){.hero{height:700px}.service-row,.service-row figure{height:255px}}@media (width<=900px){.hero{height:650px}}@media (width<=640px){.desktop-break{display:none}.hero,.service-row,.service-row--reverse{height:auto}.service-row figure{height:255px}}@media (width>=1181px){.hero-copy{padding-right:20px}.hero h1{max-width:none;font-size:68px;line-height:1.02}.about{height:550px;min-height:0;overflow:hidden}.works{padding-top:34px;padding-bottom:40px}.works .ornament-heading{margin-bottom:18px}.works-grid{height:380px}}@media (width<=1180px){.desktop-break{display:none}.about{min-height:520px}.works{padding-bottom:65px}}.hero h1 span{display:block}@media (width>=1181px){.hero h1 span{white-space:nowrap}}@media (width<=1180px){.hero h1 span{display:inline}.hero h1 span:not(:last-child):after{content:" "}}@media (width>=1181px){.hero h1{font-size:62px}}@media (width<=640px){.hero{grid-template-columns:1fr}.hero-copy,.hero-visual{width:100%}}.hero,.about,.contact{width:calc(100% - 8vw);max-width:1328px;margin-inline:auto}@media (width<=900px){.hero,.about,.contact{width:calc(100% - 64px)}}@media (width<=640px){.hero,.about,.contact{width:calc(100% - 40px)}}
