@font-face{font-family:Playfair Display;src:url(/assets/font-0.woff2);font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Playfair Display;src:url(/assets/font-1.woff2);font-display:swap;font-style:italic;font-weight:400}@font-face{font-family:Playfair Display;src:url(/assets/font-2.woff2);font-display:swap;font-style:normal;font-weight:500}@font-face{font-family:Manrope;src:url(/assets/font-3.woff2);font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Manrope;src:url(/assets/font-4.woff2);font-display:swap;font-style:normal;font-weight:500}:root{--paper:#fdf6ee;--surface:#f6efe7;--ink:#383230;--muted:#756b65;--brown:#925737;--sand:#baa287;--serif:"Playfair Display",Georgia,serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font:400 18px/1.45 var(--sans);letter-spacing:-.55px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}button{border:0}p,h1,h2,h3{margin:0}h2{font:400 60px/1.2 var(--sans);letter-spacing:-3px}h2 em{font-family:var(--serif);font-weight:400;color:var(--brown)}.wrap{max-width:1200px;margin-left:auto;margin-right:auto}.section{padding:150px 0 0}.label{display:inline-block;background:#f1eae2;padding:8px 16px;border-radius:12px;font-size:16px;letter-spacing:0;font-weight:500;margin-bottom:22px}.section-title{text-align:center;max-width:1050px;margin:0 auto 56px}.section-title>p{margin:16px auto 0;color:var(--muted);max-width:800px}.brand{font-family:var(--sans);font-size:29px;font-weight:400;line-height:1;letter-spacing:-1.8px;white-space:nowrap}.skip{position:fixed;top:-100px;left:20px;z-index:999;background:var(--paper);padding:15px}.skip:focus{top:10px}.site-header{position:fixed;top:0;left:0;width:100%;z-index:50;color:#fff;transition:background .4s,color .4s}.site-header.solid{background:#fdf6eef7;color:var(--ink)}.nav-inner{max-width:1200px;margin:auto;height:78px;display:flex;align-items:center;justify-content:space-between}.nav-inner nav{display:flex;align-items:center;gap:25px}.nav-link{font-size:14px;letter-spacing:.25px;height:22px;overflow:hidden;display:block}.nav-link span{display:block;transition:transform .45s cubic-bezier(.22,1,.36,1);line-height:22px}.nav-link:hover span,.nav-link:focus-visible span{transform:translateY(-100%)}.menu-toggle{display:none}.hero{position:relative;height:100svh;min-height:680px;overflow:hidden;color:#fff}.hero-media{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;transform:translateY(var(--hero-shift,0))}.hero-media video{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(0,0,0,.27),transparent 75%)}.hero-inner{position:relative;z-index:2;max-width:1200px;margin:auto;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding-bottom:82px}.hero h1{font:400 90px/1.1 var(--serif);letter-spacing:-2.6px;margin:0 0 23px;max-width:1050px}.hero h1 span{display:inline-block;animation:hero-enter 1.3s cubic-bezier(.2,.7,.3,1) both}.hero h1 span:last-child{animation-delay:.12s}.hero-inner>p{max-width:510px;font-size:18px;line-height:1.5;margin-bottom:31px;animation:hero-enter 1.3s .18s both}.hero-actions{display:flex;gap:12px;animation:hero-enter 1.3s .28s both}.flip{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border:0;border-radius:12px;background:var(--brown);color:#fff;padding:15px 24px;font-size:16px;line-height:1.2;letter-spacing:-.35px;perspective:500px;min-height:48px;transition:background .3s}.flip.light{background:#f2e9de;color:var(--ink)}.flip-space{visibility:hidden}.flip-face{position:absolute;left:0;right:0;text-align:center;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .35s;backface-visibility:hidden}.flip .front{transform:translateY(0) rotateX(0);opacity:1}.flip .back{transform:translateY(80%) rotateX(-90deg);opacity:0}.flip:hover .front,.flip:focus-visible .front{transform:translateY(-85%) rotateX(90deg);opacity:0}.flip:hover .back,.flip:focus-visible .back{transform:translateY(0) rotateX(0);opacity:1}.flip:hover{background:#7d462a}.flip.light:hover{background:#e8ddcf}.motion-toggle{position:absolute;bottom:20px;right:max(24px,calc((100vw - 1200px)/2));z-index:2;background:#00000038;color:#fff;border:1px solid #ffffff50;border-radius:20px;font-size:12px;padding:7px 12px;letter-spacing:0}.story{height:430vh;position:relative}.story-sticky{position:sticky;top:0;height:100svh;overflow:hidden;display:grid;place-items:center}.story-message{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;padding:90px 24px;will-change:transform,opacity,filter}.story-message:first-child{opacity:1}.story-message:not(:first-child){opacity:0}.story-message p{font:400 70px/1.6 var(--sans);letter-spacing:-3.8px;max-width:1140px}.story-message em{font-style:normal;color:var(--brown)}.story-photo{position:absolute;top:calc(50% - 180px);height:360px;width:300px;border:8px solid var(--surface);border-radius:20px;z-index:2;overflow:hidden;will-change:transform;box-shadow:0 10px 35px #58331a0d}.story-photo img{height:100%;width:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.3,1)}.story-photo:hover img{transform:scale(1.06)}.photo-0{left:calc(50% - 150px)}.photo-1{left:calc(50% + 195px)}.photo-2{left:calc(50% - 495px)}.philosophy{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border-radius:28px;padding:8px;gap:0;margin-top:100px}.philosophy-image{overflow:hidden;border-radius:20px;min-height:720px}.philosophy-image img{width:100%;height:100%;object-fit:cover}.philosophy-copy{padding:40px 32px;align-self:center}.philosophy-copy h2{margin:0 0 30px}.philosophy-copy p{color:var(--muted);margin:0 0 22px;line-height:1.4}.signature{display:block;margin-top:60px;font-size:28px}.service-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}.service-tabs{display:flex;flex-direction:column;gap:8px}.service-tab{text-align:left;border-radius:18px;background:var(--surface);padding:22px 24px;width:100%;transition:background .3s}.service-tab h3{font:400 30px/1.3 var(--serif);color:#a58c74;letter-spacing:-1.1px;transition:color .35s}.service-tab:hover h3,.service-tab.active h3{color:var(--brown)}.service-description{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .5s,opacity .45s,margin .45s;margin-top:0}.service-description p{overflow:hidden;color:var(--muted);font-size:17px;line-height:1.45}.service-tab.active .service-description{grid-template-rows:1fr;opacity:1;margin-top:14px}.service-visuals{padding:8px;border-radius:28px;background:var(--surface);min-height:520px}.service-visual{height:100%;min-height:504px;overflow:hidden;border-radius:20px;animation:image-in .65s cubic-bezier(.2,.7,.3,1)}.service-visual img{width:100%;height:100%;min-height:504px;max-height:640px;object-fit:cover;transition:transform .8s}.service-visual:hover img{transform:scale(1.035)}[hidden]{display:none!important}.process-film{height:600px;position:relative;border:8px solid var(--surface);border-radius:28px;overflow:hidden;color:#fff}.process-film>video{height:100%;width:100%;object-fit:cover}.film-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#20130926}.film-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:40px;gap:36px}.letter-reveal{font:400 45px/1.3 var(--serif);max-width:850px;letter-spacing:-.5px}.letter-reveal span{transition:opacity .16s}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}.step{border-radius:20px;text-align:center;background:var(--surface);padding:28px 25px 32px}.step>span{font:400 32px/1.3 var(--serif);color:var(--brown)}.step h3{font-size:23px;color:var(--brown);font-weight:500;margin:13px 0 12px}.step p{font-size:16px;color:var(--muted)}.faq{padding-bottom:150px}.faq-items{max-width:800px;margin:auto}.faq details{border-bottom:1px solid #ded3c8}.faq summary{list-style:none;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:26px 0}.faq summary::-webkit-details-marker{display:none}.faq summary img{width:24px;height:24px;opacity:.6;transition:transform .3s;flex-shrink:0}.faq details[open] summary img{transform:rotate(45deg)}.faq details>p{color:var(--muted);font-size:16px;line-height:1.6;padding:0 50px 24px 0}.contact{margin-bottom:24px;padding:70px 56px 30px;background:var(--surface);border-radius:28px;text-align:center}.contact>.brand{display:block;margin-bottom:35px}.contact h2{margin-bottom:20px}.contact>p{color:var(--muted);margin-bottom:28px}.demo-note{font-size:14px!important;max-width:560px;margin:25px auto!important}.footer-nav{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;font-size:14px;margin:60px 0 30px}.footer-nav a:hover{color:var(--brown)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);border-top:1px solid #e5dacf;padding-top:22px;letter-spacing:0}.reveal{opacity:0;transform:translateY(28px);filter:blur(3px);transition:opacity 1s,transform 1s cubic-bezier(.22,1,.36,1),filter 1s}.reveal.visible{opacity:1;transform:translateY(0);filter:blur(0)}:focus-visible{outline:2px solid var(--brown);outline-offset:5px}.hero :focus-visible{outline-color:#fff}@keyframes hero-enter{0%{opacity:0;transform:translateY(30px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@keyframes image-in{0%{opacity:.3;transform:scale(.99);filter:blur(4px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@media(max-width:1279px){.wrap{margin-left:40px;margin-right:40px}.nav-inner{margin:0 40px}.hero-inner{padding-left:40px;padding-right:40px}.hero h1{font-size:80px}.philosophy-copy h2{font-size:48px}.philosophy-image{min-height:680px}.story-message p{font-size:64px}.photo-1{left:auto;right:9%}.photo-2{left:9%}.service-tab h3{font-size:28px}}@media(max-width:999px){body{font-size:17px}.wrap{margin-left:16px;margin-right:16px}.section{padding-top:96px}.site-header{left:8px;top:8px;width:calc(100% - 16px);border-radius:14px;background:var(--paper);color:var(--ink);overflow:hidden}.nav-inner{height:70px;margin:0 20px}.brand{font-size:25px;letter-spacing:-1.6px}.menu-toggle{display:grid;place-items:center;background:transparent;padding:0;width:32px;height:32px}.menu-toggle img{height:25px;width:25px;transition:transform .45s}.expanded .menu-toggle img{transform:rotate(45deg)}.nav-inner nav{visibility:hidden;opacity:0;pointer-events:none;position:fixed;top:78px;left:8px;width:calc(100% - 16px);height:calc(85svh - 78px);background:var(--paper);border-radius:0 0 14px 14px;display:flex;flex-direction:column;justify-content:center;gap:22px;transform:translateY(-12px);transition:opacity .4s,transform .4s,visibility .4s}.nav-inner nav.open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}.nav-link{font-size:36px;letter-spacing:-2px;line-height:1.3;height:48px}.nav-link span{line-height:48px}.hero{height:90svh;min-height:700px}.hero-inner{padding:150px 24px 45px}.hero h1{font-size:58px;letter-spacing:-1.6px;line-height:1.04;margin-bottom:22px}.hero h1 br{display:none}.hero h1 span{display:inline}.hero-inner>p{font-size:16px;max-width:420px;line-height:1.4;margin-bottom:28px}.hero-media video{object-position:center}.hero-shade{background:linear-gradient(0deg,#160d0870,transparent 70%)}.hero-actions{gap:10px;flex-wrap:wrap}.flip{font-size:14px;padding:14px 18px;border-radius:10px;min-height:46px}.motion-toggle{bottom:10px;right:16px;font-size:10px;padding:4px 9px}.story{height:400svh}.story-message p{font-size:40px;line-height:1.55;letter-spacing:-2px}.story-photo{height:270px;width:220px;top:calc(50% - 135px);border-width:6px;border-radius:14px}.photo-0{left:calc(50% - 110px)}.photo-1{right:5%}.photo-2{left:5%}.philosophy{display:flex;flex-direction:column;margin-top:55px;padding:8px;border-radius:22px}.philosophy-image{min-height:0;height:520px;border-radius:16px}.philosophy-copy{padding:32px 16px}.philosophy-copy h2{font-size:46px;letter-spacing:-2px}.philosophy-copy p{font-size:17px;line-height:1.5}.signature{margin-top:35px}.section-title{margin-bottom:40px;padding:0 10px}.label{font-size:14px;padding:7px 13px;border-radius:9px;margin-bottom:20px}h2{font-size:44px;letter-spacing:-2px}.section-title>p{font-size:16px;line-height:1.5}.service-layout{display:flex;flex-direction:column-reverse;gap:20px}.service-visuals{height:390px;min-height:0;border-radius:22px}.service-visual{height:100%;min-height:0;border-radius:16px}.service-visual img{min-height:0;height:100%;max-height:none}.service-tab{padding:20px;border-radius:14px}.service-tab h3{font-size:28px}.service-description p{font-size:16px}.process-film{height:550px;border-radius:22px}.film-content{padding:22px;gap:28px}.letter-reveal{font-size:34px;line-height:1.35}.steps{grid-template-columns:1fr;gap:8px;margin-top:12px}.step{padding:24px 30px}.step h3{font-size:22px}.faq{padding-bottom:96px}.faq summary{font-size:16px;line-height:1.5;padding:24px 5px}.faq details>p{padding-left:5px;font-size:15px}.contact{padding:48px 20px 25px;border-radius:22px}.contact h2{font-size:40px}.footer-nav{gap:20px;font-size:13px;margin-top:42px}.footer-bottom{flex-direction:column;gap:8px;text-align:center;font-size:11px}}@media(max-width:420px){.hero h1{font-size:52px}.hero-inner{padding-left:20px;padding-right:20px}.hero-actions .flip{padding:14px 15px;font-size:13px}.hero{min-height:680px}.story-message p{font-size:31px;letter-spacing:-1.5px;line-height:1.65}.story-photo{width:200px;height:245px}.photo-0{left:calc(50% - 100px)}.philosophy-image{height:465px}.philosophy-copy h2{font-size:42px}.service-visuals{height:360px}.service-tab h3{font-size:26px}.letter-reveal{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none;filter:none}.hero-media{transform:none}.story{height:auto;padding:60px 20px}.story-sticky{position:static;height:auto;display:flex;flex-direction:column;gap:30px;overflow:visible}.story-message{position:relative;inset:auto;padding:20px;opacity:1!important;filter:none!important;transform:none!important}.story-photo{display:none}.letter-reveal span{opacity:1!important}.hero h1 span,.hero-inner>p,.hero-actions{opacity:1;transform:none}.flip:hover .front{opacity:0}.flip:hover .back{opacity:1;transform:none}}@media(max-width:999px){.site-header.expanded{border-bottom-left-radius:0;border-bottom-right-radius:0}.nav-link{font-size:39px;font-weight:500}}.nav-inner{position:relative}.nav-inner>.brand{position:absolute;left:50%;transform:translate(-50%);z-index:2}@media(min-width:1000px){.nav-inner nav{width:100%;display:grid;grid-template-columns:1fr auto 250px auto 1fr;gap:28px}.nav-inner nav .nav-link:nth-child(1){justify-self:end}.nav-inner nav .nav-link:nth-child(2){grid-column:2}.nav-inner nav .nav-link:nth-child(3){grid-column:4}.nav-inner nav .nav-link:nth-child(4){justify-self:start}}@media(max-width:999px){.menu-toggle{margin-left:auto}.nav-inner>.brand{font-size:25px}}.brand{font-family:var(--serif);font-weight:400;font-style:normal;font-size:30px;letter-spacing:-.6px;line-height:1.2}.contact-actions{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap}.contact-phone{font-size:19px;letter-spacing:.2px;border-bottom:1px solid var(--sand);padding:8px 0;transition:color .2s}.contact-phone:hover{color:var(--brown)}@media(max-width:999px){.nav-inner>.brand{font-size:25px;letter-spacing:-.5px}.contact-actions{flex-direction:column;gap:14px}.contact-phone{font-size:18px}}@media(min-width:1000px){.nav-inner{max-width:none;margin:0;height:120px;padding:0 40px}.nav-inner>.brand{font-size:clamp(38px,3.45vw,48px);letter-spacing:-1px}.nav-inner nav{grid-template-columns:auto auto minmax(330px,1fr) auto auto;gap:32px}.nav-inner nav .nav-link:nth-child(1){justify-self:start}.nav-inner nav .nav-link:nth-child(4){justify-self:end}.nav-link{font-size:14px;letter-spacing:.4px}}

/* Balanced spacing between the name and menu groups. */
@media(min-width:1000px){
 .nav-inner{max-width:1200px;margin:0 auto;height:100px;padding:0 32px}
 .nav-inner>.brand{font-size:40px;letter-spacing:-.8px}
 .nav-inner nav{grid-template-columns:1fr auto 340px auto 1fr;gap:28px}
 .nav-inner nav .nav-link:nth-child(1){justify-self:end}
 .nav-inner nav .nav-link:nth-child(4){justify-self:start}
}

/* Center each menu group in the space between the logo and the screen edge. */
@media(min-width:1000px){
 .nav-inner{max-width:none;width:100%;margin:0;height:100px;padding:0}
 .nav-inner>.brand{width:280px;text-align:center;font-size:40px;letter-spacing:-.8px}
 .nav-inner nav{width:100%;grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr) 280px minmax(0,1fr) auto auto minmax(0,1fr);gap:0}
 .nav-inner nav .nav-link:nth-child(1){grid-column:2;justify-self:stretch;margin-right:28px}
 .nav-inner nav .nav-link:nth-child(2){grid-column:3;justify-self:stretch}
 .nav-inner nav .nav-link:nth-child(3){grid-column:7;justify-self:stretch;margin-right:28px}
 .nav-inner nav .nav-link:nth-child(4){grid-column:8;justify-self:stretch}
}
