*,::after,::before{box-sizing:border-box}*{margin:0}canvas,img,picture,svg,video{max-width:100%;display:block}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word;text-wrap:pretty}@media (prefers-reduced-motion){*{animation:none!important;transition-duration:0s!important}}ul{list-style:none;padding:0}:root{--color-clear-white:#FFFFFF;--color-yale-blue:#1A4A8E;--color-paradise-pink:#ED335B;--color-gun-metal:#2F3542;--color-transparent-white:rgba(255, 255, 255, 0.9);--color-transparent-black:rgba(0, 0, 0, 0.5);--gradient-blue-pink:linear-gradient(90deg, var(--color-yale-blue), var(--color-paradise-pink));--gradient-black-black:linear-gradient(0deg, var(--color-transparent-black), var(--color-transparent-black));--gradient-white-white:linear-gradient(0deg, var(--color-transparent-white), var(--color-transparent-white));--variable-padding-1rem:clamp(5px, 1.25vw, 1rem);--variable-padding-2rem:clamp(10px, 1.75vw, 2rem);--variable-padding-3rem:clamp(15px, 3.75vw, 3rem);--variable-padding-4rem:clamp(20px, 5vw, 4rem);--variable-padding-5rem:clamp(25px, 6.5vw, 5rem);--variable-padding-10rem:clamp(75px, 8vw, 10rem);--variable-padding-15rem:clamp(150px, 12vw, 15rem);--border-radius-sm:0.25rem;--border-radius-md:0.5rem;--border-radius-lg:1rem}main{container-type:inline-size;flex-direction:column;align-items:center;display:flex}section{flex-direction:column;align-items:center;display:flex;width:100%}section .content{padding:var(--variable-padding-10rem) var(--variable-padding-4rem);max-width:1500px;width:100%}img{height:auto}body{background:var(--gradient-white-white),var(--gradient-blue-pink);-webkit-font-smoothing:antialiased;font-weight:400;line-height:1.5;font-size:16px;color:var(--color-gun-metal)}@media screen and (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}div.row-container{gap:var(--variable-padding-5rem);flex-direction:column;display:flex}div.row{gap:var(--variable-padding-2rem);flex-wrap:wrap;display:flex;width:100%}div.row>div.column:only-child{min-width:100%;width:100%}div.row>div.column:not(:only-child){min-width:calc(50% - var(--variable-padding-2rem)/ 2);width:calc(50% - var(--variable-padding-2rem)/ 2)}.tag-list{gap:clamp(5px,1.25vw,1rem);overflow-x:scroll;display:flex}.tag-list .tag{background-color:var(--color-clear-white);border-radius:var(--border-radius-sm);max-height:min-content;padding:clamp(3px,.75vw,.5rem) clamp(5px,1.25vw,1rem)}a.big-link{color:var(--color-gun-metal);text-decoration:none;font-size:3rem;display:flex}a.big-link svg{transition:margin .3s;margin-left:.5rem;width:64px}a.big-link svg path{stroke:var(--color-gun-metal)}a.big-link:hover{text-decoration:underline}a.big-link:hover svg{margin-left:1rem}section.main-about h1,section.main-projects h2,section.main-services h2{font-size:clamp(1.5rem, 4vw, 2.5rem)}section.project-body h2{text-transform:uppercase;font-size:1rem}a{color:var(--color-gun-metal)}.text-gradient{-webkit-text-fill-color:transparent;background:linear-gradient(45deg,var(--color-yale-blue),var(--color-paradise-pink));-webkit-background-clip:text;background-clip:text}footer{background:var(--gradient-blue-pink);padding:var(--variable-padding-1rem);width:100%}footer .content{background:url('./../assets/images/noise_dark.png') repeat repeat,var(--gradient-black-black);border-radius:var(--border-radius-sm);font-size:clamp(.8rem, 3vw, 1.2rem);padding:var(--variable-padding-3rem);color:var(--color-clear-white);flex-direction:column;display:flex;height:100%;width:100%}footer svg{margin-bottom:var(--variable-padding-15rem);width:60px}footer a{color:var(--color-clear-white);text-decoration:none}footer a:hover{text-decoration:underline}footer a.highlight{font-weight:600;font-size:clamp(1rem, 5vw, 2.8rem)}footer .content>div{gap:clamp(5px,5vw,3rem);margin-top:5rem;display:flex}footer small{font-size:clamp(.8rem, 3vw, 1rem)}section.main-hero{--logo-animation-speed:.5s;background:var(--gradient-blue-pink);max-width:100%;padding:1rem;height:100vh;background-size:150% 150%;background-position:50% 50%;transition:background-position .2s ease-out}section.main-hero .content{background:url('/assets/images/noise_light.png') repeat repeat,linear-gradient(0deg,var(--color-transparent-white),var(--color-transparent-white));border-radius:var(--border-radius-sm);padding:var(--variable-padding-3rem);color:var(--color-gun-metal);justify-content:space-between;flex-direction:column;max-width:100%;display:flex;height:100%;width:100%}section.main-hero .content a{color:var(--color-gun-metal)}section.main-hero nav{font-size:clamp(.75rem, 3vw, 1.25rem);justify-content:space-between;container-type:inline-size;display:flex;height:50px;width:100%}section.main-hero .logo-wrapper{display:flex;height:50px}section.main-hero svg path{stroke:var(--color-gun-metal)}section.main-hero .logo-wrapper svg{transition:transform var(--logo-animation-speed);height:100%}section.main-hero .logo-wrapper span{transition:opacity var(--logo-animation-speed),width var(--logo-animation-speed);padding:15px 3px 0;max-width:min-content;font-size:1.25rem;overflow-x:hidden;opacity:0;width:0}section.main-hero .logo-wrapper:hover svg{transform:scale(.75)}section.main-hero .logo-wrapper:hover span{width:100%;opacity:1}section.main-hero nav ul{gap:var(--variable-padding-2rem);display:flex}@container (width < 700px){div.row>div.column:not(:only-child){min-width:100%;width:100%}section.main-hero nav ul{flex-direction:column;gap:0}}section.main-hero nav ul li{position:relative}section.main-hero nav ul li::after{transition:transform .25s ease-in-out,opacity .25s ease-in-out;background:var(--gradient-blue-pink);width:calc(100% - 1rem);display:inline-block;pointer-events:none;position:absolute;border-radius:1px;left:.5rem;content:'';height:4px;opacity:0;bottom:0}section.main-hero nav ul li:hover::after{transform:translateY(-5px);opacity:1}section.main-hero nav ul li a{text-transform:uppercase;min-width:max-content;text-decoration:none;display:inline-block;font-weight:700;padding:.5rem}section.main-hero .hero-heading{font-size:clamp(3rem, 8vw, 5rem);margin-bottom:1rem;font-weight:600}section.main-hero p{font-size:1.5rem}section.main-projects .card-container{container-type:inline-size;flex-direction:column;display:flex;gap:1rem}section.main-projects .card{background-color:var(--color-clear-white);grid-template-rows:min-content 1fr 48px;border-radius:var(--border-radius-sm);gap:var(--variable-padding-1rem);grid-template-columns:1fr 1fr;scroll-margin-top:1rem;height:25vw;max-height:300px;display:grid;padding:1rem;grid-template-areas:'image title .' 'image body .' 'image . actions'}section.main-projects .card .card-image{border-radius:var(--border-radius-sm);position:relative;grid-area:image;overflow:hidden;display:grid}section.main-projects .card .card-image img{object-position:center;object-fit:cover;max-width:unset;max-height:100%;border-radius:0;height:100%;width:100%}section.main-projects .card .card-title{grid-area:title}section.main-projects .card .card-title span{font-size:clamp(1rem, 2vw, 1.5rem);font-weight:700}section.main-projects .card .card-body{grid-area:body}section.main-projects .card .card-body p{-webkit-line-clamp:5;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;line-clamp:5}section.main-projects .card .card-actions{justify-content:flex-end;display:flex;grid-area:actions}section.main-projects .card .card-actions a:hover svg{margin:0 0 0 10px}section.main-projects .card .card-actions svg{stroke:var(--color-gun-metal);transition:margin .3s;margin:0 10px 0 0;height:48px}@container (width < 1350px){section.main-projects .card .card-body p{-webkit-line-clamp:4;line-clamp:4}}@container (width < 900px){section.main-projects .card{grid-template-rows:200px auto 1fr auto;grid-template-columns:1fr;max-height:450px;height:450px;grid-template-areas:'image' 'title' 'body' 'actions'}section.main-projects .card .card-actions svg{width:32px}}section.main-about{container-type:inline-size}@container (width < 768px){section.main-projects .card{grid-template-rows:150px auto 1fr auto;max-height:400px;height:400px}section.main-about .tag-list{display:none}}section.main-about .tag-list{margin-bottom:1rem}section.main-about picture{max-width:500px}section.main-about .big-link{margin-top:var(--variable-padding-2rem);font-size:2rem}section.main-about .big-link svg{width:38px}section.main-services{background-color:var(--color-gun-metal);color:var(--color-clear-white);container-type:inline-size}section.main-services h3{font-size:clamp(1.2rem, 3.5vw, 1.5rem)}.grid-wrapper{grid-template-rows:100px 1fr auto;max-width:var(--default-max-width);grid-template-columns:1fr 1fr 1fr;margin-top:var(--default-padding);display:grid;width:100%;gap:1rem;grid-template-areas:'. first .' 'second first third' 'fourth fourth fourth'}.grid-wrapper div{background-color:var(--color-clear-white);border-radius:var(--border-radius-sm);padding:var(--variable-padding-3rem)}@container (width < 900px){.grid-wrapper{grid-template-rows:repeat(4,auto);grid-template-columns:1fr;grid-template-areas:'first' 'second' 'third' 'fourth'}}.grid-wrapper div:first-of-type{background:linear-gradient(45deg,var(--color-yale-blue),var(--color-paradise-pink));grid-area:first}.grid-wrapper div:nth-of-type(2){color:var(--color-gun-metal);grid-area:second}.grid-wrapper div:nth-of-type(3){color:var(--color-gun-metal);grid-area:third}.grid-wrapper div:nth-of-type(4){color:var(--color-gun-metal);grid-area:fourth}section.project-hero{--logo-animation-speed:.5s;padding:var(--variable-padding-1rem);background:var(--gradient-blue-pink);max-width:100%;height:60vh}section.project-hero .content{background-color:rgba(255,255,255,.7);border-radius:var(--border-radius-sm);padding:var(--variable-padding-3rem);color:var(--color-gun-metal);position:relative;overflow:hidden;max-width:100%;height:100%;width:100%}section.project-hero .content::after{background:linear-gradient(0deg,rgba(255,255,255,0),#fff);position:absolute;height:250px;width:100%;content:'';left:0;top:0}section.project-hero img{object-position:center;position:absolute;object-fit:cover;height:100%;left:0;top:0}section.project-hero header{font-size:clamp(.75rem, 3vw, 1.25rem);justify-content:space-between;position:relative;display:flex;height:50px;width:100%;z-index:1}section.project-hero .logo-wrapper{display:flex;height:50px}section.project-hero svg path{stroke:var(--color-gun-metal)}section.project-hero .logo-wrapper svg{transition:transform var(--logo-animation-speed);height:100%}section.project-hero .logo-wrapper span{transition:opacity var(--logo-animation-speed),width var(--logo-animation-speed);padding:15px 3px 0;max-width:min-content;font-size:1.25rem;overflow-x:hidden;opacity:0;width:0}section.project-hero .logo-wrapper:hover svg{transform:scale(.75)}section.project-hero .logo-wrapper:hover span{width:100%;opacity:1}section.project-hero a{color:var(--color-gun-metal);text-decoration:none}section.project-hero .back-link{transition:gap .3s;align-items:center;display:flex;gap:.5rem}section.project-hero .back-link svg{height:clamp(.75rem,3vw,1.25rem);width:clamp(.75rem,3vw,1.25rem)}section.project-hero a:hover{gap:.75rem}section.project-heading{container-type:inline-size}section.project-heading .content{flex-direction:column;display:flex;gap:1rem}section.project-heading h1{font-size:clamp(1rem, 6.5vw, 3rem)}@container (width < 768px){section.project-heading .content{padding:var(--variable-padding-5rem) var(--variable-padding-4rem)}}section.project-body .column p:has(picture){border-radius:var(--border-radius-lg);background-color:rgba(255,255,255,.4);border:1.5rem solid rgba(255,255,255,.4)}section.project-next span{font-size:1.2rem}section.imprint-hero{--logo-animation-speed:.5s;padding:var(--variable-padding-1rem);max-width:100%}section.imprint-hero .content{border-radius:var(--border-radius-sm);padding:var(--variable-padding-3rem);color:var(--color-gun-metal);position:relative;overflow:hidden;max-width:100%;height:100%;width:100%}section.imprint-hero header{font-size:clamp(.75rem, 3vw, 1.25rem);justify-content:space-between;position:relative;display:flex;height:50px;width:100%}section.imprint-hero .logo-wrapper{display:flex;height:50px}section.imprint-hero svg path{stroke:var(--color-gun-metal)}section.imprint-hero .logo-wrapper svg{transition:transform var(--logo-animation-speed);height:100%}section.imprint-hero .logo-wrapper span{transition:opacity var(--logo-animation-speed),width var(--logo-animation-speed);padding:15px 3px 0;max-width:min-content;font-size:1.25rem;overflow-x:hidden;opacity:0;width:0}section.imprint-hero .logo-wrapper:hover svg{transform:scale(.75)}section.imprint-hero .logo-wrapper:hover span{width:100%;opacity:1}section.imprint-hero a{color:var(--color-gun-metal);text-decoration:none}section.imprint-hero .back-link{transition:gap .3s;align-items:center;display:flex;gap:.5rem}section.imprint-hero .back-link svg{height:clamp(.75rem,3vw,1.25rem);width:clamp(.75rem,3vw,1.25rem)}section.imprint-hero a:hover{gap:.75rem}section.imprint-body .row{flex-direction:column}