@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Source+Sans+3:wght@400;500;600;700&family=Forum&display=swap);@keyframes contact-spin{to{transform:rotate(360deg)}}html{font-family:"Source Sans 3",system-ui,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{font-feature-settings:"kern"}:root{--font-heading:'Forum', 'Source Sans 3', Georgia, 'Times New Roman', serif;--font-nav:'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell,
    'Helvetica Neue', Arial, sans-serif}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:400}h1{font-size:clamp(2.25rem,5vw + 1rem,3.5rem);text-transform:uppercase;line-height:1.05;letter-spacing:.5px;margin:0 0 1.5rem}h2,h3,h4,h5,h6{letter-spacing:-.25px;line-height:1.15}h2{font-size:clamp(1.75rem,3.5vw + .75rem,2.5rem)}h3{font-size:clamp(1.5rem,2.5vw + .5rem,2rem)}h4{font-size:clamp(1.25rem,1.5vw + .6rem,1.5rem)}h5{font-size:clamp(1.125rem,1vw + .6rem,1.25rem)}h6{font-size:clamp(1rem,.75vw + .6rem,1.125rem)}*,::after,::before{box-sizing:border-box}blockquote,body,dd,dl,figure,h1,h2,h3,h4,h5,h6,p{margin:0}ol[role=list],ul[role=list]{list-style:none;margin:0;padding:0}body{line-height:1.5;text-rendering:optimizeLegibility}img,picture{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}#__next,#root{isolation:isolate}a{color:inherit;color:var(--color-link);text-decoration:none}html:focus-within{scroll-behavior:smooth}@media (prefers-color-scheme:dark){body{color-scheme:dark}}header[role=banner]{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--color-bg-top) 95%,transparent);backdrop-filter:blur(8px)}nav{display:flex;align-items:center;flex-wrap:wrap;gap:0 1rem;text-transform:uppercase;font-size:12.75px;padding:.5rem 0}nav .nav-logo{opacity:1;transition:opacity .3s ease,transform .3s ease}:is(nav .nav-logo) a{display:block;line-height:0;padding:0}:is(nav .nav-logo) img{height:45px;width:auto;filter:brightness(0) invert(1)}nav>div{display:flex;align-items:center;justify-content:center;font-size:13.6px;line-height:32px;letter-spacing:.1em}:is(nav>div) a{color:var(--color-text-subtle);padding:.5rem 1rem .6rem;transition:color .2s ease,background-color .2s ease}:is(nav>div) a:hover{color:var(--color-link-hover)}:is(nav>div) a:focus-visible{outline:2px solid var(--color-link-hover);outline-offset:3px;background-color:color-mix(in srgb,var(--color-accent) 18%,transparent)}section.hero{position:relative;isolation:isolate;display:block;margin-top:0;min-height:40vh;max-width:100%;width:100%;background-image:url(/img/shavings.jpg);background-position:center bottom;background-repeat:no-repeat;filter:saturate(1.2)}.hero::after{content:"";position:absolute;inset:0;bottom:-1px;pointer-events:none;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-bg-top) 30%,transparent) 0%,color-mix(in srgb,var(--color-bg-top) 60%,transparent) 55%,var(--color-bg-bottom) 100%);z-index:2}.hero__content{position:relative;z-index:3;max-width:850px;width:80%;margin:0 auto;padding:0 1rem}.hero__flex{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.hero__title{margin:0;font-size:clamp(3.3rem,7.2vw + 1.2rem,5.4rem);line-height:1.05;color:#fff}.hero__logo{display:block;max-height:min(300px,90vh);width:auto;filter:brightness(0) invert(1) drop-shadow(0 0 10px rgba(0,0,0,.7))}.hero__title-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.hero__tagline{font-size:clamp(1.05rem,1.2vw + .85rem,1.35rem);font-family:var(--font-heading, inherit);text-transform:uppercase;letter-spacing:.05em;line-height:1.4;max-width:46ch;color:rgba(255,255,255,.85);margin:0;padding-block:0 2rem;text-align:center}@media (min-width:768px){.hero__flex{flex-direction:row;align-items:center;gap:2rem}.hero__logo{margin:2rem 0}.hero__tagline{padding-block-start:7rem;text-align:center}}@media (min-width:900px){.hero__title{font-size:clamp(3.9rem,4.2vw + 1.2rem,6rem)}.hero__logo{max-height:min(350px,60vh)}}@media (max-width:900px){.hero__content{display:flex;flex-direction:column;justify-content:flex-end;min-height:calc(100% - .5rem)}}@media (min-width:1024px){.hero__title{font-size:clamp(5.265rem,5.67vw + 1.62rem,8rem)}.hero__tagline{padding-block-start:5rem}}@media (min-width:1280px){.hero__title{letter-spacing:-1px;font-size:clamp(5.67rem,6.075vw + 1.89rem,8rem)}}.projects{padding-bottom:3rem}.projects-grid{display:grid;gap:1rem;margin-top:2rem;grid-template-columns:1fr}.project-preview{overflow:hidden;position:relative;transition:transform .2s ease}.project-preview:hover{transform:translateY(-4px)}.project-preview a{text-decoration:none;color:inherit;display:block;position:relative}.project-preview picture{display:block;width:100%;overflow:hidden}.project-preview img{max-height:515px;-o-object-fit:cover;object-fit:cover;transition:opacity .3s ease}.project-preview a:hover img{opacity:.3}.project-preview h3,.project-preview p{position:absolute;left:0;right:0;padding:0 1.5rem;color:var(--color-text);opacity:0;transition:opacity .3s ease;pointer-events:none}.project-preview h3{top:50%;transform:translateY(-100%);margin:0;font-weight:700;font-size:1.5rem}.project-preview p{top:50%;transform:translateY(10%);margin:0;line-height:1.5;font-size:.95rem}.lightbox__content:hover .lightbox__next,.lightbox__content:hover .lightbox__prev,.project-preview a:hover h3,.project-preview a:hover p{opacity:1}@media (min-width:600px){.projects .projects-grid{grid-template-columns:repeat(2,1fr)}.projects .project-mathieu{grid-column:1;grid-row:1}.projects .project-jane{grid-column:2;grid-row:1}.projects .project-catherine{grid-column:1;grid-row:2}.projects .project-andy{grid-column:1;grid-row:3}.projects .project-leonie{grid-column:2;grid-row:2/4}}@media (min-width:900px){.projects .projects-grid{grid-template-columns:repeat(2,1fr)}.projects .project-mathieu{grid-column:1;grid-row:1}.projects .project-jane{grid-column:2;grid-row:1}.projects .project-catherine{grid-column:1;grid-row:2}.projects .project-andy{grid-column:1;grid-row:3}.projects .project-leonie{grid-column:2;grid-row:2/4}}.project-page{width:94%;max-width:850px;margin:2rem auto;padding:1rem}.project-page h1{margin-bottom:.5rem}.project-description{font-size:1.1rem;color:var(--color-text);opacity:.8;margin-bottom:2rem;margin-left:auto;margin-right:auto}.project-gallery{display:grid;gap:1rem;margin-top:1.5rem;grid-template-columns:1fr}.project-gallery picture{width:100%;display:block;cursor:pointer;transition:opacity .2s ease}.project-gallery picture:hover{opacity:.85}.project-gallery img,.project-preview img{width:100%;height:auto;display:block}@media (min-width:600px){.project-gallery{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.project-gallery{grid-template-columns:repeat(3,1fr);gap:1rem}}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);backdrop-filter:blur(8px);z-index:1000;display:none;align-items:center;justify-content:center;padding:2rem;cursor:pointer;opacity:0;transition:opacity .3s ease}.lightbox.is-open{display:flex;opacity:1}.lightbox__content{max-width:95vw;max-height:95vh;position:relative;cursor:default}.lightbox__image{max-width:100%;max-height:95vh;width:auto;height:auto;display:block;box-shadow:0 20px 60px rgba(0,0,0,.5)}.lightbox__close{position:absolute;top:-3rem;right:0;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.5rem;line-height:1;transition:background-color .2s ease}.lightbox__close:hover{background:rgba(255,255,255,.2)}.lightbox__close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lightbox__next,.lightbox__prev{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.6);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2);color:#fff;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:2rem;line-height:1;opacity:0;transition:background-color .2s ease,transform .2s ease,opacity .3s ease;z-index:10}.lightbox__prev{left:.5rem}.lightbox__next{right:.5rem}.lightbox__next:hover,.lightbox__prev:hover{background:rgba(0,0,0,.8)}.lightbox__prev:active{transform:translateY(-50%) translateX(-2px)}.lightbox__next:active{transform:translateY(-50%) translateX(2px)}.lightbox__next:focus-visible,.lightbox__prev:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (max-width:767px){.lightbox{padding:1rem}.lightbox__close{top:auto;bottom:-3.5rem;right:50%;transform:translateX(50%)}.lightbox__next,.lightbox__prev{width:44px;height:44px;font-size:1.75rem}.lightbox__prev{left:.25rem}.lightbox__next{right:.25rem}}.contact__form{display:grid;gap:1.5rem;max-width:760px}.contact__field{display:grid;gap:.4rem}.contact__field label{font-weight:600;font-size:.95rem;letter-spacing:.5px;text-transform:uppercase}.contact__field input,.contact__field textarea{font:inherit;background:var(--color-surface);color:var(--color-text);border:0;border:1px solid var(--color-bg-top);border-radius:4px;padding:.85rem 1rem;resize:vertical;line-height:1.4;transition:border-color .18s,background-color .18s,box-shadow .18s}.contact__field input:focus-visible,.contact__field textarea:focus-visible{outline:0;border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 40%,transparent)}.contact__help{font-size:.75rem;color:var(--colorcolor-text-field-info)}.contact__submit{justify-self:start;font:inherit;font-weight:600;letter-spacing:.5px;background:var(--color-accent);color:var(--color-button-text);border:0;border-radius:4px;padding:.9rem 1.5rem .85rem;cursor:pointer;text-transform:uppercase;font-size:.9rem;line-height:1;display:inline-flex;gap:.5rem;align-items:center;transition:background-color .2s,transform .2s,box-shadow .2s}.contact__submit:hover{background:color-mix(in srgb,var(--color-accent) 85%,#fff 15%)}.contact__submit:active{transform:translateY(1px)}.contact__submit:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;box-shadow:0 0 0 3px rgba(255,168,106,.4)}.contact__submit[disabled]{cursor:progress;opacity:.7}.contact__submit.is-loading{position:relative;opacity:.75}.contact__submit.is-loading::after{content:"";width:1em;height:1em;border:2px solid var(--color-button-text);border-top-color:var(--color-bg-bottom);border-right-color:var(--color-bg-bottom);border-radius:50%;animation:contact-spin .75s linear infinite}.contact__status[aria-live]{font-size:.9rem;color:var(--color-text-subtle);margin-top:-.5rem}.contact__form:has(.contact__field:focus-within) .contact__field:focus-within label{color:var(--color-accent)}@media (prefers-contrast:more){.contact__field input,.contact__field textarea{border-color:rgba(255,255,255,.4)}}footer{background:var(--color-bg-top)}.footer-content{display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap;padding:1.5rem 0;font-size:.9rem;letter-spacing:.05em;text-transform:none}.footer-content p{color:var(--color-text-subtle);margin:0}.instagram-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-text-subtle);transition:color .2s ease,transform .2s ease;text-decoration:none}.instagram-link:hover{color:var(--color-accent);transform:translateY(-1px)}.instagram-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:4px}.instagram-icon{width:20px;height:20px;display:block;filter:brightness(0) saturate(100%) invert(86%) sepia(10%) saturate(276%) hue-rotate(6deg) brightness(97%) contrast(92%)}:root{--color-bg-top:#361d0e;--color-bg-bottom:#010101;--color-text:#361d0e;--color-text-subtle:rgba(214, 212, 200, 0.75);--color-text-field-info:rgba(54, 29, 14, 0.7);--color-accent:rgb(255, 168, 106);--color-link:var(--color-text);--color-link-hover:var(--color-accent);--color-surface:rgba(255, 255, 255, 0.05);--color-border:rgba(255, 255, 255, 0.15);--color-button-text:#1a110c}body{color:var(--color-text);min-height:100vh}a:hover{color:var(--color-link-hover)}a:focus-visible{outline:2px solid var(--color-link-hover);outline-offset:3px;text-decoration:underline}.footer-content,header[role=banner] nav,section{width:94%;max-width:850px;margin:0 auto}.dark{background:var(--color-bg-top)}.dark,.dark h2,.dark h3,.dark h4,.dark p{color:#fff}.highlight{background:var(--color-accent)}.highlight,.highlight h2,.highlight h3,.highlight h4,.highlight p{color:var(--color-button-text)}section{margin-top:2rem;margin-bottom:2rem;padding:1rem}section.centred{text-align:center}hr.separator{position:relative;border:0;height:20px;background:0 0;margin:2.5rem auto 3rem;width:100%;display:flex;align-items:center;justify-content:center}hr.separator::after{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-color:color-mix(in srgb,var(--color-text) 30%,transparent);transform:translateY(-50%);z-index:1}hr.separator::before{content:"";position:relative;width:14px;height:14px;border-radius:50%;background-color:#fff;border:1px solid var(--color-text);box-shadow:0 0 0 10px #fff;z-index:2}.dark hr.separator::after{background-color:color-mix(in srgb,rgba(255,255,255,.9) 30%,transparent)}.dark hr.separator::before{background-color:var(--color-bg-top);border-color:rgba(255,255,255,.9);box-shadow:0 0 0 10px var(--color-bg-top)}.highlight hr.separator::after{background-color:color-mix(in srgb,var(--color-button-text) 30%,transparent)}.highlight hr.separator::before{background-color:var(--color-accent);border-color:var(--color-button-text);box-shadow:0 0 0 10px var(--color-accent)}@media (min-width:480px){.footer-content,header[role=banner] nav,section{width:90%}}@media (min-width:768px){.footer-content,header[role=banner] nav,section{width:85%}}@media (min-width:1024px){.footer-content,header[role=banner] nav,section{width:82%}}@media (min-width:1280px){.footer-content,header[role=banner] nav,section{width:80%}}