@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-Hairline.ttf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-HairlineItalic.ttf) format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-Thin.ttf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Rader;src:url(/fonts/rader/PPRader-ThinItalic.ttf) format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-Black.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-BlackItalic.otf) format("opentype");font-weight:900;font-style:italic;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-BoldItalic.otf) format("opentype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-Book.otf) format("opentype");font-weight:450;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-BookItalic.otf) format("opentype");font-weight:450;font-style:italic;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-Light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-LightItalic.otf) format("opentype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-RegularItalic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-SemiBold.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans;src:url(/fonts/messina-sans/MessinaSans-SemiBoldItalic.otf) format("opentype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Messina Sans Mono;src:url(/fonts/messina-sans-mono/MessinaSansMono-Black.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans Mono;src:url(/fonts/messina-sans-mono/MessinaSansMono-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans Mono;src:url(/fonts/messina-sans-mono/MessinaSansMono-Book.otf) format("opentype");font-weight:450;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans Mono;src:url(/fonts/messina-sans-mono/MessinaSansMono-Light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans Mono;src:url(/fonts/messina-sans-mono/MessinaSansMono-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Messina Sans Mono;src:url(/fonts/messina-sans-mono/MessinaSansMono-SemiBold.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}:root{--bg: #e3e3db;--bg200: rgba(227, 227, 219, .25);--fg: #0f0f0f;--fg200: #1f1f1f}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Messina Sans;background-color:var(--bg);color:var(--fg)}img{position:relative;width:100%;height:100%;object-fit:cover;will-change:transform}h1,h2,h3,h4,h5{text-transform:uppercase;font-family:Rader}h1{font-size:8vw;font-weight:600;letter-spacing:-.02em;line-height:6.4vw}h2{font-size:5vw;font-weight:600;letter-spacing:-.02em;line-height:4vw}h3{font-size:4vw;font-weight:600;letter-spacing:-.02em;line-height:3.4vw}h4{font-size:2vw;font-weight:600;letter-spacing:-.005em;line-height:2vw}h5{font-size:1.25rem}p{font-family:Messina Sans;font-size:1rem;font-weight:600;-webkit-font-smoothing:antialiased}p.primary{text-transform:uppercase;font-family:Messina Sans Mono;font-size:1rem;font-weight:600;letter-spacing:.04em;-webkit-font-smoothing:antialiased}p.secondary{font-family:Messina Sans;font-size:1rem;font-weight:600;-webkit-font-smoothing:antialiased}p.primary.sm{text-transform:uppercase;font-family:Messina Sans Mono;font-size:.8rem;font-weight:600;letter-spacing:.04em;-webkit-font-smoothing:antialiased}p.secondary.sm{font-family:Messina Sans;font-size:.8rem;font-weight:600;-webkit-font-smoothing:antialiased}a{display:block;text-decoration:none;text-transform:uppercase;color:var(--fg);font-family:Messina Sans Mono;font-size:.8rem;font-weight:600;-webkit-font-smoothing:antialiased}button{outline:none;border:none}input,textarea,input:active,input:focus,textarea:active,textarea:focus{border:none;outline:none;width:100%;padding:1em;font-family:Messina Sans;font-size:1rem;font-weight:600;-webkit-font-smoothing:antialiased;border-radius:.5rem}input::placeholder,textarea::placeholder{font-family:Messina Sans;font-size:1rem;font-weight:600;-webkit-font-smoothing:antialiased}.btn{text-decoration:none;text-transform:uppercase;display:block;width:max-content;padding:1em 2em;font-family:Messina Sans Mono;font-size:.8rem;font-weight:600;letter-spacing:.04em;border-radius:.4em;background-color:var(--fg);color:var(--bg);-webkit-font-smoothing:antialiased}@media (max-width: 1000px){h1{font-size:14vw;line-height:12vw}h2{font-size:10vw;line-height:8vw}h3{font-size:8vw;line-height:7vw}h4{font-size:6vw;line-height:6vw}}.menu-container{position:fixed;width:100vw;height:100vh;top:0;left:0;z-index:100;pointer-events:none}.menu-bar{position:fixed;top:0;width:calc(100% - 4em);height:64px;margin:2em;display:flex;justify-content:space-between;align-items:flex-start;background:#00000040;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:1rem;overflow:hidden;border:1px dashed rgba(255,255,255,.25);pointer-events:all;z-index:100000}.menu-bar-container{background-color:transparent;width:100%;height:64px;display:flex;justify-content:space-between;align-items:center;padding:0 .7em .1em 1em}.menu-logo a{position:relative;display:inline-block;top:-.05em;color:var(--bg)}.menu-actions{display:flex;align-items:center;gap:2em}.menu-toggle{width:60px;height:60px;display:flex;justify-content:flex-end;align-items:center}.hamburger-icon{position:absolute;display:flex;justify-content:center;align-items:center;outline:none;height:40px;width:60px;border-radius:.6rem;background:#00000040;background:transparent;transition:all .3s;border:1px dashed rgba(255,255,255,.25)}.hamburger-icon:hover{background:#fff3}.hamburger-icon:before,.hamburger-icon:after{content:"";position:absolute;width:24px;height:1.5px;background:#fff;transition:all .3s ease-in-out;transition-delay:.15s;will-change:transform}.hamburger-icon:before{transform:translateY(-3px)}.hamburger-icon:after{transform:translateY(3px)}.active.hamburger-icon:before{transform:translateY(0) rotate(45deg)}.active.hamburger-icon:after{transform:translateY(0) rotate(-45deg)}.menu{position:absolute;top:0;left:0;width:calc(100% - 4em);height:calc(100svh - 4em);background:transparent;border-radius:1rem;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 0,0 0);display:flex;justify-content:center;align-items:center;pointer-events:none;z-index:100000;margin:2em}.menu-link-item{position:relative;padding:1em 0 .125em;clip-path:polygon(0 0,100% 0,100% 100%,0% 100%);text-align:center;pointer-events:all}.menu-link-item .menu-link-item-holder{position:relative;will-change:transform}.menu-link-item .menu-link-item-holder a{position:relative;color:var(--bg);font-family:Rader;font-size:7vw;text-transform:uppercase;letter-spacing:-.01em;line-height:80%;transition:color .3s}.menu-link-item .menu-link-item-holder:hover a{color:#fff}@media (max-width: 1000px){.menu{width:calc(100% - 2.5em);height:calc(100svh - 2.5em);margin:1.25em}.menu-bar{margin:1.25em;width:calc(100% - 2.5em)}.menu-toggle{justify-content:flex-end}.menu-col{width:100%;flex-direction:column}.menu-link-item .menu-link-item-holder a{font-size:16vw}}.hero{position:relative;width:100vw;height:100svh;overflow:hidden;display:flex;align-items:flex-end;padding:2em}.hero-img{position:absolute;top:0;left:0;width:100%;height:100%}.hero-header{position:relative;width:100%;display:flex;justify-content:space-between;z-index:1}.hero-header h1{color:var(--bg);line-height:1}.sticky-work-header{position:relative;width:100vw;height:100svh;padding:2em;display:flex;justify-content:center;align-items:center;text-align:center;overflow:hidden}.sticky-work-header h1{opacity:.125;line-height:1}.home-work{width:100%;padding:8em 2em}.home-work-list{width:40%;margin:0 auto;display:flex;flex-direction:column;gap:8em}.home-work-item{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:2em}@media (max-width: 1000px){.hero,.sticky-work-header{padding:1.25em}.home-work{padding:8em 1.25em}.home-work-list{width:100%}}.animated-copy [class^=line-]{clip-path:polygon(0 0,100% 0,100% 100%,0% 100%);display:block;overflow:hidden;margin:0;padding:0}.animated-copy [class^=line-inner-]{position:relative;display:block;will-change:transform}.spotlight{position:relative;width:100vw;height:100svh;padding:2em}.spotlight-inner{--panel-height: calc(100svh - 4em) ;position:relative;width:100%;height:100%;overflow:hidden;border-radius:1em;background-color:var(--fg)}.spotlight-intro-text-wrapper{position:absolute;width:100%;top:50%;transform:translateY(-50%);display:flex;gap:.5em;z-index:1}.spotlight-intro-text{flex:1;position:relative;will-change:transform}.spotlight-intro-text h2{color:var(--bg);line-height:1;white-space:nowrap}.spotlight-intro-text:nth-child(1){display:flex;justify-content:flex-end}.spotlight-bg-img{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;transform:scale(0);will-change:transform;border-radius:1em;opacity:.65}.spotlight-bg-img img{transform:scale(1.5)}.spotlight-titles-container{position:absolute;top:0;left:15vw;width:100%;height:100%;overflow:hidden;clip-path:polygon(calc(var(--panel-height) / 2) 0px,0px 50%,calc(var(--panel-height) / 2) 100%,100% calc(100% + var(--panel-height)),100% calc(-1 * var(--panel-height)));--before-opacity: 0;--after-opacity: 0;z-index:2}.spotlight-titles-container:before,.spotlight-titles-container:after{content:"";position:absolute;left:0;width:var(--panel-height);height:0;border-top:1px dashed var(--bg);pointer-events:none;transition:opacity .3s ease}.spotlight-titles-container:before{top:0;transform:rotate(-45deg) translate(-7rem);opacity:var(--before-opacity)}.spotlight-titles-container:after{bottom:0;transform:rotate(45deg) translate(-7rem);opacity:var(--after-opacity)}.spotlight-titles{position:relative;left:15%;width:75%;height:100%;display:flex;flex-direction:column;gap:4em;transform:translateY(100%)}.spotlight-title{opacity:.35;transition:opacity .3s ease}.spotlight-title.active{opacity:1}.spotlight-title h2{color:var(--bg);line-height:1}.spotlight-title-img{display:none}.spotlight-images{position:absolute;top:0;right:0;width:50%;min-width:300px;height:100%;z-index:1;pointer-events:none}.spotlight-img{position:absolute;width:200px;height:150px;border:1px dashed var(--bg200);border-radius:.5em;overflow:hidden;will-change:transform}.spotlight-header{position:absolute;top:50%;left:10%;transform:translateY(-50%);transition:opacity .3s ease;opacity:0;z-index:2}.spotlight-header p{color:var(--bg)}@media (max-width: 1000px){.spotlight{padding:1.25em}.spotlight-inner{--panel-height: calc(100svh - 2.5em) }.spotlight-intro-text-wrapper{justify-content:center}.spotlight-intro-text{flex:0 0 auto}.spotlight-intro-text h2{font-size:7vw}.spotlight-titles-container{left:0;clip-path:none}.spotlight-titles-container:before,.spotlight-titles-container:after,.spotlight-header{display:none}.spotlight-titles{left:0;width:100%;padding:0 1.25em;gap:1.5em}.spotlight-title{display:flex;justify-content:space-between;align-items:center;gap:1em}.spotlight-title h2{font-size:8vw}.spotlight-title-img{display:block;flex-shrink:0;width:clamp(72px,20vw,140px);aspect-ratio:4/3;border:1px dashed var(--bg200);border-radius:.5em;overflow:hidden;transition:border-color .3s ease}.spotlight-title.active .spotlight-title-img{border-color:var(--bg)}.spotlight-images{display:none}}.reviews{position:relative;width:100vw;height:100svh;padding:4em 2em;background-color:var(--fg);color:var(--bg);text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2em}#review-copy{width:50%;margin:0 auto}.review-item{width:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;display:flex;flex-direction:column;gap:2em;padding:2em}#quote-icon{position:absolute;top:25%}.reviews-list{position:absolute;bottom:10%;width:20%;margin:0 auto;display:flex;gap:.5em}.review-thumbnail{aspect-ratio:5/3;min-height:50px;border:1px dashed var(--bg200);border-radius:.5em;overflow:hidden;cursor:pointer;transition:border .3s ease-in-out}.review-thumbnail.active{border:1px dashed var(--bg)}h4#review-copy,h4#review-author{font-kerning:none;overflow:hidden;line-height:1!important}h4#review-copy .line,h4#review-author .line{position:relative;clip-path:polygon(0 0,100% 0,100% 100%,0% 100%);overflow:hidden}h4#review-copy .line span,h4#review-author .line span{position:relative;display:inline-block;will-change:transform}@media (max-width: 1000px){.reviews{padding:4em 1.25em}#review-copy{width:100%}.reviews-list{width:50%}.review-item{padding:1.25em}}.hobbies{width:100vw;padding:2em 2em 0;display:flex;gap:1em}.hobby{--ease-out: cubic-bezier(.22, 1, .36, 1);position:relative;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.5em;text-align:center;aspect-ratio:1;border:1px dashed var(--fg);border-radius:1em;overflow:hidden;color:var(--fg);transition:transform .6s var(--ease-out),color .4s ease}.hobby:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--fg);transform:scaleY(0);transform-origin:bottom;transition:transform .6s var(--ease-out)}.hobby>*{position:relative;z-index:1}.hobby>.hobby-img{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;opacity:.4;clip-path:inset(100% 0 0 0);transition:clip-path .7s var(--ease-out)}.hobby-img img{transform:scale(1.15);transition:transform 1.2s var(--ease-out)}.hobby-icon{width:clamp(56px,6vw,112px);overflow:visible;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.hobby-icon *{stroke-dasharray:1;stroke-dashoffset:0}.hobby-arrow,.hobby-category{position:absolute;transition:opacity .4s ease,transform .6s var(--ease-out)}.hobby-arrow{top:1em;right:1.25em;font-family:Messina Sans;font-size:1.25rem;line-height:1}.hobby-category{bottom:1.5em;left:1em;right:1em}@media (hover: hover){.hobby-arrow,.hobby-category{opacity:0}.hobby-arrow{transform:translate(-.5em,.5em)}.hobby-category{transform:translateY(1em)}.hobby:hover{transform:scale(1.025);color:var(--bg)}.hobby:hover:before{transform:scaleY(1)}.hobby:hover>.hobby-img{clip-path:inset(0 0 0 0)}.hobby:hover .hobby-img img{transform:scale(1)}.hobby:hover .hobby-arrow,.hobby:hover .hobby-category{opacity:1;transform:none}}@media (hover: hover) and (prefers-reduced-motion: no-preference){.hobby:hover .hobby-icon *{animation:hobby-icon-draw 1.1s var(--ease-out) both}.hobby:hover .hobby-icon *:nth-child(2){animation-delay:.08s}.hobby:hover .hobby-icon *:nth-child(3){animation-delay:.16s}.hobby:hover .hobby-icon *:nth-child(4){animation-delay:.24s}.hobby:hover .hobby-icon *:nth-child(5){animation-delay:.32s}}@keyframes hobby-icon-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@media (prefers-reduced-motion: reduce){.hobby,.hobby:before,.hobby>.hobby-img,.hobby-img img{transition:color .4s ease}.hobby:hover{transform:none}}@media (max-width: 1000px){.hobbies{flex-direction:column;gap:1.25em;padding:1.25em 1.25em 0}.hobby{aspect-ratio:5/3;gap:1em}.hobby-category{bottom:1.25em}}.contact-form{padding:2em;display:flex;flex-direction:column;gap:4em;margin:2em;background-color:var(--fg);border-radius:1em}.contact-form h3,.contact-form p,.contact-form input,.contact-form textarea{color:var(--bg)}.contact-form input,.contact-form textarea{background-color:var(--fg200)}.contact-form .btn{background-color:var(--bg);color:var(--fg)}.contact-form-col:nth-child(1){display:flex;flex-direction:column;gap:1.5em}.contact-form-header{display:flex;flex-direction:column;gap:1.5em}.contact-form-header p{margin-bottom:.5em;width:75%}.contact-form-row{display:flex;gap:1em}.contact-form-col{flex:1}.contact-form-col:nth-child(1){display:flex;flex-direction:column;justify-content:space-between;gap:4em}.contact-form-availability{width:75%;display:flex;justify-content:space-between;gap:1em;border-top:1px dashed var(--bg);padding:.5em 0}.contact-form-col:nth-child(2){display:flex;flex-direction:column;gap:.75em}.form-item .btn{width:100%}@media (max-width: 900px){.contact-form{margin:1.25em}.contact-form h3,.contact-form p{text-align:center}.contact-form-row{flex-direction:column;gap:4em}.contact-form-header p,.contact-form-availability{width:100%}.contact-form-col:nth-child(1){gap:2em}.contact-form-availability{flex-direction:column;text-align:center;gap:.25em}}.footer{width:100vw;height:100%;min-height:100svh;padding:4em 2em 2em;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.footer-row:nth-child(1){display:flex;justify-content:space-between;gap:4em}.footer-contact,.footer-nav{flex:1}.footer-nav{display:flex;flex-direction:column;align-items:flex-end}.footer-nav-item{width:50%;padding:1em 0;display:flex;justify-content:space-between;border-top:1px dashed var(--fg)}.footer-nav-item:last-child{border-bottom:1px dashed var(--fg)}.footer-contact{display:flex;flex-direction:column;gap:1.5em}.footer-contact p{margin-bottom:.5em}.footer-header{width:100%;padding:4em 0;display:flex;justify-content:space-between;align-items:flex-end}.footer-header h1{position:relative;left:-.5vw;font-size:15vw}.footer-copyright-line{width:100%;padding:.5em 0;display:flex;justify-content:space-between;align-items:flex-start;border-top:1px dashed var(--fg)}@media (max-width: 1000px){.footer-row:nth-child(1){flex-direction:column}.footer-nav{align-items:flex-start}.footer-nav-item{width:100%}.footer-header{padding:1em 0}.footer{padding:4em 1.25em 1.25em;gap:2em}}.booking-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:#0f0f0f59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.booking-dock{position:fixed;left:0;right:0;bottom:2em;z-index:1000;padding:0 1.25em;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:end;pointer-events:none}.booking-pill,.booking-panel{grid-area:1 / 1;pointer-events:auto;color:var(--bg);border:1px dashed rgba(255,255,255,.25)}.booking-pill{--ease-out: cubic-bezier(.22, 1, .36, 1);height:48px;padding:6px 6px 6px 1.25em;display:flex;align-items:center;background:#0f0f0fd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 12px 40px #00000040;cursor:pointer}.booking-pill-content{display:flex;align-items:center;gap:.85em;white-space:nowrap}.booking-pill-dot{position:relative;flex-shrink:0;width:6px;height:6px;border-radius:50%;background:var(--bg)}.booking-pill-dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--bg);animation:booking-pulse 2s ease-out infinite}@keyframes booking-pulse{0%{transform:scale(1);opacity:.6}to{transform:scale(3);opacity:0}}.booking-pill-roll{height:1.2em;padding-right:.5em;display:flex;flex-direction:column;overflow:hidden;text-align:left;font-family:Messina Sans Mono;font-size:.8rem;font-weight:600;line-height:1.2em;letter-spacing:.04em;text-transform:uppercase;-webkit-font-smoothing:antialiased}.booking-pill-roll span{transition:transform .5s var(--ease-out)}.booking-pill-arrow{position:relative;flex-shrink:0;width:36px;height:36px;border-radius:50%;overflow:hidden;background:var(--bg);color:var(--fg);transition:transform .5s var(--ease-out)}.booking-pill-arrow svg{position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .5s var(--ease-out)}.booking-pill-arrow svg:last-child{transform:translate(-36px)}@media (hover: hover){.booking-pill:hover .booking-pill-roll span{transform:translateY(-100%)}.booking-pill:hover .booking-pill-arrow{transform:rotate(-45deg)}.booking-pill:hover .booking-pill-arrow svg:first-child{transform:translate(36px)}.booking-pill:hover .booking-pill-arrow svg:last-child{transform:translate(0)}}.booking-panel{width:min(440px,100%);padding:1.25em;overflow:hidden;background:var(--fg);box-shadow:0 30px 80px #00000059;outline:none}.booking-header{height:36px;margin-bottom:1.25em;display:flex;justify-content:space-between;align-items:center;gap:1em}.booking-header h4{font-size:1.5rem;line-height:1;white-space:nowrap}.booking-header-actions{display:flex;align-items:center;gap:.5em}.booking-icon-btn{flex-shrink:0;width:36px;height:36px;display:flex;justify-content:center;align-items:center;border:1px dashed rgba(255,255,255,.25);border-radius:.6rem;background:transparent;color:var(--bg);cursor:pointer;transition:background .3s ease,opacity .3s ease}.booking-icon-btn:hover:not(:disabled){background:#ffffff1a}.booking-icon-btn:disabled{opacity:.25;cursor:default}.booking-icon-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.booking-weekdays,.booking-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.booking-weekdays{margin-bottom:.5em;text-align:center;opacity:.45}.booking-day,.booking-slot,.booking-date-chip{position:relative;display:flex;justify-content:center;align-items:center;background:transparent;color:var(--bg);font-family:Messina Sans Mono;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;-webkit-font-smoothing:antialiased}.booking-day,.booking-slot{border:1px dashed transparent;border-radius:.5em;cursor:pointer;transition:border-color .3s ease,color .3s ease}.booking-day{aspect-ratio:1}.booking-day:hover:not(:disabled),.booking-slot:hover{border-color:#ffffff40}.booking-day:disabled{opacity:.2;cursor:default}.booking-day.today:after{content:"";position:absolute;bottom:18%;left:50%;width:3px;height:3px;margin-left:-1.5px;border-radius:50%;background:currentColor}.booking-day.selected,.booking-slot.selected,.booking-date-chip{color:var(--fg)}.booking-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg)}.booking-day-label{position:relative;z-index:1}.booking-date-chip{height:36px;padding:0 1em;white-space:nowrap}.booking-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.booking-slot{height:44px;border-color:#ffffff1f}.booking-slot.full-day{grid-column:1 / -1}.booking-confirm-wrapper{overflow:hidden}.booking-confirm{width:100%;height:48px;margin-top:1em;padding:0 1.25em;display:flex;justify-content:space-between;align-items:center;border-radius:.5em;background:var(--bg);color:var(--fg);font-family:Messina Sans Mono;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;-webkit-font-smoothing:antialiased;cursor:pointer}.booking-done{padding:1.5em .5em .25em;display:flex;flex-direction:column;align-items:center;gap:1em;text-align:center}.booking-done-icon{width:56px;height:56px;fill:none;stroke:var(--bg);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.booking-done h4{font-size:1.75rem;line-height:1}.booking-done p{opacity:.7}.booking-done .booking-confirm{justify-content:center}.booking-pill:focus-visible,.booking-icon-btn:focus-visible,.booking-day:focus-visible,.booking-slot:focus-visible,.booking-confirm:focus-visible{outline:1px solid var(--bg);outline-offset:2px}@media (prefers-reduced-motion: reduce){.booking-pill-dot:after{animation:none}.booking-pill-roll span,.booking-pill-arrow,.booking-pill-arrow svg{transition:none}}@media (max-width: 1000px){.booking-dock{bottom:1.25em}.booking-slots{grid-template-columns:repeat(3,1fr)}}.blocks-container{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;flex-direction:column;pointer-events:none;z-index:10000000}.row{flex:1;width:100%;display:flex}.block{position:relative;flex:1;background:var(--bg);margin:-.25px}.transition-in .block{transform-origin:top}.transition-out .block{transform-origin:bottom}.work-carousel{position:fixed;width:100vw;height:100svh;overflow:hidden;background-color:var(--fg)}.work-slider-img{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.work-items-preview-container{position:fixed;left:50%;transform:translate(-50%);bottom:2em;width:75%;height:60px;display:flex;justify-content:center;gap:1em}.work-item{border:1px dashed var(--bg200);border-radius:.5em;overflow:hidden;cursor:pointer;transition:border .3s ease-in-out}.work-item.active{border:1px dashed var(--bg)}.carousel-info{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:1em;width:100%;padding:1.25em}.carousel-description,.carousel-title{position:relative;clip-path:polygon(0 0,100% 0,100% 100%,0% 100%);width:100%}.carousel-title h1{line-height:1}.carousel-title h1,.carousel-description p{position:relative;display:block;will-change:transform;color:var(--bg);text-align:center}@media (max-width: 1000px){.work-items-preview-container{width:100%;padding:0 1.25em}}.project-header{width:100vw;height:50svh;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:1.5em;padding-bottom:3em;text-align:center}.project-banner-img{position:relative;width:100svw;height:100svh;overflow:hidden}.project-banner-img-wrapper{position:absolute;top:0;left:0;width:100%;height:100%}.project-details{width:40%;padding:6em 1em;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4em}.details{display:flex;flex-direction:column;gap:1em}.project-images{background-color:var(--fg);color:var(--bg);padding:4em 2em}.project-images-container{width:75%;margin:0 auto;display:flex;flex-direction:column;gap:2em}.project-img{position:relative;width:100%;height:80svh;overflow:hidden}.project-img-wrapper{position:absolute;top:0;left:0;width:100%;height:100%}.next-project{width:100vw;height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.5em;text-align:center}.next-project-img{position:relative;width:35%;height:400px;overflow:hidden}.next-project-img-wrapper{position:absolute;top:0;left:0;width:100%;height:100%}@media (max-width: 1000px){.project-header{padding:1.25em 1.25em 3em}.project-details{width:100%;padding:6em 1.25em;gap:3em}.project-images{padding:4em 1.25em}.project-images-container{width:100%;gap:1.25em}.next-project{padding:1.25em}.next-project-img{width:75%}.project-img{height:65svh}}.about-header{width:100%;margin-top:8em;padding:2em;display:flex;justify-content:space-between}.about-header h1{position:relative;left:-.75vw;font-size:18vw;line-height:.75}.about-hero{position:relative;display:flex;justify-content:center;padding:2em;height:100svh;margin:2em;border-radius:1em;overflow:hidden;border:1px dashed var(--fg)}.about-hero-img{position:absolute;top:0;left:0;width:100%;height:100%}.about-me-copy{position:relative;width:100%;padding:4em 2em}.about-me-copy-wrapper{width:60%;margin:0 auto;text-align:center}.about-me-copy-wrapper h3{margin:1em}.about-me-copy-wrapper h3{font-size:3vw;letter-spacing:-.02em;line-height:3vw}.services{margin:2em;padding:2em;display:flex;gap:2em;border:1px dashed var(--fg);border-radius:1em}.services-col:nth-child(1){position:relative;flex:2;border:1px dashed var(--fg);border-radius:1em;display:flex;justify-content:center;align-items:center;text-align:center;overflow:hidden}.services-banner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%}.services-col:nth-child(1) p{position:relative;color:var(--bg);z-index:1}.services-col:nth-child(2){flex:4}.services-col h4{margin-bottom:2em}.services-list{display:flex;flex-direction:column;gap:1em}.service-list-row{width:100%;display:flex;gap:2em}.service-list-col:nth-child(1){flex:2}.service-list-col:nth-child(2){flex:4}.service-list-row{padding:2em 0;border-top:1px dashed var(--fg)}.about-banner-img{margin:2em;height:50svh;border-radius:1em;overflow:hidden;border:1px dashed var(--fg)}.about-banner-img-wrapper{width:100%;height:100%}.fav-tools{margin:2em;padding:6em 2em 2em;border:1px dashed var(--fg);border-radius:1em}.fav-tools-header{margin-bottom:4em;display:flex;flex-direction:column;align-items:center;gap:1.5em}.fav-tools-header p.secondary{width:60%;text-align:center}.fav-tools-list{display:flex;flex-direction:column;gap:2em}.fav-tools-list-row{display:flex;gap:2em}.fav-tool{position:relative;flex:1;padding:1em;aspect-ratio:5/2.5;display:flex;flex-direction:column;justify-content:flex-end;gap:.5em;border:1px dashed var(--fg);border-radius:1em;overflow:hidden}.fav-tool-img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;z-index:-1}.fav-tool h4,.fav-tool p{color:var(--bg)}@media (max-width: 1000px){.about-header{padding:1.25em}.about-hero,.about-banner-img,.fav-tools{margin:1.25em}.about-me-copy{padding:4em 1.25em}.about-me-copy-wrapper{width:100%}.about-me-copy-wrapper h3{font-size:6vw;letter-spacing:-.02em;line-height:6vw}.fav-tools{padding:4em 1.25em 1.25em}.fav-tools-header p.secondary{width:100%}.fav-tools-list-row{flex-direction:column;gap:1.25em}.fav-tools-list{gap:1.25em}.services{flex-direction:column;margin:1.25em;padding:1.25em}.services-col:nth-child(1){aspect-ratio:5/3}.service-list-row{flex-direction:column;gap:1em}}.faq.page{padding-top:8em}.faq-container{width:100%;padding:2em}.faq-wrapper.full-width{width:100%;padding:2em 0}.faq-wrapper.contained{margin:0 auto;width:60%;padding:2em 0}.faq-title{text-align:center}.faq-items{margin-top:4em}.faq-item{margin-bottom:1em;padding:.25em 1em;border:1px dashed var(--fg);border-radius:1em}.faq-question{padding:1em 0;display:flex;justify-content:space-between;align-items:center;gap:1em;cursor:pointer}.faq-question h3{margin:0;font-size:1.25rem;letter-spacing:0em;line-height:1.5rem;-webkit-user-select:none;user-select:none}.faq-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.faq-answer{position:relative;will-change:transform}.faq-answer p{position:relative;margin:0;width:100%;-webkit-user-select:none;user-select:none;word-wrap:break-word;white-space:normal;will-change:transform,opacity}@media (max-width: 1000px){.faq-container{padding:1.25em}.faq-wrapper.contained{width:100%}}.page.contact{padding-top:8em}
