:root{--color-canvas: #1A120F;--color-on-canvas: #FBECDF;--color-modal: #FEFCFA;--color-on-modal-primary: #FF4B0F;--color-on-modal-deemphasis: #1D141199;--color-on-modal: #1D1411E5;--color-modal-elevation-1: #F4EEEC;--color-scrim: #1D1411BF;--color-focus-ring: #38BDF8;--font-main: "Inter", "InterVariable", sans-serif;--font-modal: "Inter", "InterVariable", sans-serif;--font-secondary: "Lora", Georgia, serif;--font-size-desktop: 40px;--line-height: 1.23;--font-weight: 400;--card-width: 50px;--card-height: 25px;--card-hover-width: 50px;--card-hover-height: 25px;--transition-card: .3s ease-out}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--color-canvas);color:var(--color-on-canvas);font-family:var(--font-main);font-size:var(--font-size-desktop);line-height:var(--line-height);font-weight:var(--font-weight);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;min-height:100vh;overflow-x:hidden}.skip-link{position:absolute;top:-100px;left:20px;background:var(--color-on-canvas);color:var(--color-canvas);padding:8px 16px;z-index:1000;font-size:16px;font-weight:600;text-decoration:none;border-radius:4px;transition:top .2s ease}.skip-link:focus{top:20px}.decorative-header{display:none}@media(min-width:1024px){.decorative-header{display:block;position:absolute;top:35px;left:50%;transform:translate(-50%);font-family:var(--font-modal);font-weight:800;font-size:10px;color:var(--color-on-canvas);z-index:10}}.portfolio-container{width:1080px;margin:0 auto;padding:120px 20px 140px;display:flex;flex-direction:column}.main-text-block{display:flex;flex-direction:column;gap:40px;text-align:center;position:relative;z-index:1}.text-paragraph{display:block;font-size:1em;line-height:inherit;font-weight:600;color:var(--color-on-canvas);white-space:nowrap}.paragraph-text{display:inline;text-wrap:pretty}.portfolio-card-row{display:inline-block;white-space:nowrap;vertical-align:baseline;position:relative;height:calc(1em * var(--line-height));z-index:1}.row-text{display:inline-block;white-space:nowrap}.text-italic{font-style:italic;color:var(--color-on-canvas);text-shadow:none}.text-link{font-style:italic;font-weight:inherit;text-decoration:underline;text-underline-offset:.15em;color:var(--color-on-canvas);text-shadow:none;cursor:pointer;transition:opacity .2s ease}.text-link:hover{opacity:.75}.text-link:focus-visible{outline:2px solid var(--color-focus-ring);border-radius:2px}.secondary-text{font-family:var(--font-secondary);font-size:25px;line-height:1.5;color:var(--color-on-canvas);text-shadow:none;opacity:.8;display:block;white-space:normal;font-weight:400;letter-spacing:-.01em}br.br-1,br.br-2,br.br-3{display:none}.inline-card-wrapper{display:inline-flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;flex-grow:0;height:1em;width:var(--card-width);margin:0 .18em;vertical-align:middle;text-decoration:none;color:inherit;cursor:default;outline:none;transition:width var(--transition-card);overflow:visible;background:none;border:none;padding:0;font:inherit}.inline-card-wrapper:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:var(--card-height);z-index:50;cursor:inherit}.inline-card-wrapper.has-link,.inline-card-wrapper.has-case-study{cursor:pointer}.inline-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:var(--card-height);display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:5px;background-color:var(--color-canvas);border:none;box-shadow:none;z-index:-1;transition:width var(--transition-card),height var(--transition-card);will-change:width,height}.inline-card-image{width:100%;height:100%;object-fit:cover;object-position:var(--card-object-position, 50% 50%);transform:scale(var(--card-scale, 1));transition:object-position var(--transition-card),transform var(--transition-card);will-change:object-position,transform;display:block}.inline-card-wrapper:focus-visible .inline-card{outline:3px solid var(--color-focus-ring);outline-offset:3px}.card-hover-scrim{position:absolute;inset:0;background:color-mix(in srgb,var(--color-on-canvas) 50%,transparent);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;border-radius:5px;opacity:0;pointer-events:none;z-index:40;transition:opacity .5s ease-out;transition-delay:0ms}.card-hover-scrim .material-icons{font-size:30px;color:var(--color-canvas);opacity:.9;line-height:1}@media(hover:hover)and (min-width:768px){.inline-card-wrapper:not(.is-open):hover,.inline-card-wrapper.is-expanded{width:var(--card-hover-width)}.inline-card-wrapper:not(.is-open):hover .inline-card,.inline-card-wrapper.is-expanded .inline-card{height:var(--card-hover-height);z-index:-1}.inline-card-wrapper:not(.is-open):hover:after,.inline-card-wrapper.is-expanded:after{height:var(--card-hover-height)}.inline-card-wrapper:not(.is-open):hover .inline-card-image,.inline-card-wrapper.is-expanded .inline-card-image{object-position:var(--card-hover-object-position, 50% 30%);transform:scale(var(--card-hover-scale, 1.12))}.card-hover-scrim.is-visible{opacity:1;transition-delay:.5s}}.card-open-scrim{position:absolute;inset:0;background-color:var(--color-scrim);display:flex;align-items:center;justify-content:center;border-radius:5px;opacity:0;pointer-events:none;z-index:40;transition:opacity var(--transition-card)}.inline-card-wrapper.is-open .card-open-scrim{opacity:1}.card-open-scrim .material-symbols-outlined{font-size:24px;color:var(--color-on-canvas)}@media(min-width:768px){.card-open-scrim .material-symbols-outlined{font-size:30px}}@media(min-width:1200px){:root{--card-width: 104px;--card-height: 52px;--card-hover-width: 180px;--card-hover-height: 90px}html,body{font-size:46px;line-height:.97}.text-paragraph{letter-spacing:-.03em}.portfolio-container{width:1080px;padding:120px 20px 140px}br.br-1{display:inline}.panel-heading{font-size:30px}}@media(min-width:1024px)and (max-width:1199px){:root{--card-width: 80px;--card-height: 40px;--card-hover-width: 138px;--card-hover-height: 70px}html,body{font-size:36px;line-height:1.2}.portfolio-container{width:960px;padding:90px 20px 140px}br.br-2{display:inline}.secondary-text{font-size:20px}}@media(min-width:768px)and (max-width:1023px){:root{--card-width: 80px;--card-height: 40px;--card-hover-width: 138px;--card-hover-height: 70px}html,body{font-size:30px;line-height:1.2}.portfolio-container{width:768px;padding:2em 24px 100px}br.br-3{display:inline}.secondary-text{font-size:20px}}@media(min-width:480px)and (max-width:767px){html,body{font-size:20px;line-height:1.35}.portfolio-container{width:auto;padding:16px 16px 80px}.main-text-block{text-align:left}.text-paragraph{white-space:normal}.secondary-text{font-size:20px;line-height:1.35;opacity:1}}@media(max-width:479px){html,body{font-size:24px;line-height:1.1}.portfolio-container{width:auto;padding:24px 16px 60px}.main-text-block{text-align:left}.text-paragraph{white-space:normal}.portfolio-card-row{white-space:normal;height:auto}.secondary-text{font-size:20px;line-height:1.35;opacity:1}}.case-study-panel{overflow:hidden;height:0;background-color:var(--color-modal);border-radius:.5em;transition:height .3s ease-out;margin-top:.5em;margin-bottom:.5em;display:block;white-space:normal}.case-study-panel-inner{opacity:0;padding:0;transition:opacity .2s ease-out;text-align:left}.case-study-panel.is-open .case-study-panel-inner{opacity:1}.panel-heading{font-family:var(--font-modal);color:var(--color-on-modal-primary);font-size:26px;line-height:1.2;font-weight:700;margin-bottom:.2em}.panel-subheading{font-family:var(--font-modal);color:var(--color-on-modal-deemphasis);font-size:14px;line-height:1.3;letter-spacing:0;font-weight:500;margin-bottom:1em}.panel-text{display:flex;flex-direction:column}.panel-body{font-family:var(--font-modal);color:var(--color-on-modal);font-size:16px;line-height:1.4;letter-spacing:0;font-weight:500;display:flex;flex-direction:column;gap:1em;text-align:left;margin-top:auto}.panel-body a{color:inherit;text-decoration:underline;transition:color .2s ease}.panel-body a:hover{color:var(--color-on-modal-deemphasis)}.panel-graphic{position:relative;overflow:hidden;background-color:var(--color-modal-elevation-1, #F4EEEC);display:flex;align-items:center;justify-content:center;touch-action:pan-y}.carousel-track{display:flex;width:100%;height:100%;transition:transform .3s ease;will-change:transform}.carousel-slide{flex:0 0 100%;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.carousel-slide img,.carousel-slide video,.panel-graphic img,.panel-graphic video{width:100%;height:100%;object-fit:cover;display:block}.gallery-nav-buttons{position:absolute;top:.5em;right:.5em;display:flex;flex-direction:row;align-items:center;gap:8px;z-index:10}.gallery-nav-btn{width:32px;height:32px;border-radius:15px;background:#fefaf680;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;color:#1c1b1f;transition:opacity .2s ease,background-color .2s ease}.gallery-nav-btn:hover{opacity:.6}.gallery-nav-btn:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.gallery-nav-btn .material-symbols-outlined{font-size:18px;line-height:1;color:#1c1b1f;filter:drop-shadow(0px -1px 2px #FFFFFF);user-select:none}@media(min-width:768px){.case-study-panel-inner{display:flex;flex-direction:row;gap:1.6em}.panel-text{flex:1;padding:.5em 0 .6em .5em}.panel-graphic{flex:0 0 75vh;height:75vh}.panel-heading{font-size:20px}}@media(min-width:768px)and (orientation:portrait){.panel-graphic{flex:0 0 30vh;height:30vh;max-width:30vh}.panel-body{font-size:14px}}@media(max-width:767px){.case-study-panel{border-radius:0;width:calc(100% + 32px);margin-left:-16px;margin-right:-16px}.case-study-panel-inner{display:flex;flex-direction:column;gap:0}.panel-text{display:contents}.panel-heading,.panel-subheading,.panel-body{padding-left:16px;padding-right:16px}.panel-heading{order:1;margin-top:.7em;font-size:18px}.panel-subheading{order:2;margin-bottom:1em}.panel-graphic{order:3;width:100%;aspect-ratio:1 / 1;height:auto;margin-top:0}.panel-body{order:4;font-size:14px;margin-top:1em;margin-bottom:2em}.gallery-nav-buttons{top:50%;left:0;right:0;transform:translateY(-50%);width:100%;padding:0;justify-content:space-between;pointer-events:none}.gallery-nav-btn{pointer-events:auto}.gallery-nav-btn--prev{border-radius:0 15px 15px 0}.gallery-nav-btn--next{border-radius:15px 0 0 15px}}.text-paragraph,.text-paragraph span:not(.inline-card-wrapper):not(.inline-card-wrapper *),.text-paragraph a:not(.inline-card-wrapper *),.text-paragraph i:not(.inline-card-wrapper *){transition:color var(--transition-card),text-shadow var(--transition-card),opacity var(--transition-card),filter var(--transition-card),text-decoration-color var(--transition-card);will-change:color,text-shadow,opacity,filter,text-decoration-color}.text-paragraph a.text-link{transition:color var(--transition-card),text-shadow var(--transition-card),opacity .2s ease,filter var(--transition-card),text-decoration-color var(--transition-card)}.inline-card-wrapper{transition:width var(--transition-card),opacity var(--transition-card),filter var(--transition-card);will-change:width,opacity,filter}.highlight-target{display:inline;color:var(--color-on-canvas);text-shadow:none}@media(hover:hover){body.has-hovered-card .text-paragraph,body.has-hovered-card .text-paragraph span:not(.inline-card-wrapper):not(.inline-card-wrapper *),body.has-hovered-card .text-paragraph a:not(.inline-card-wrapper *),body.has-hovered-card .text-paragraph i:not(.inline-card-wrapper *){color:transparent!important;text-shadow:0 0 3px color-mix(in srgb,var(--color-on-canvas) 40%,transparent)!important}body.has-hovered-card #main-content .text-paragraph .highlight-target.is-active,body.has-hovered-card #main-content .text-paragraph .highlight-target.is-active span:not(.inline-card-wrapper):not(.inline-card-wrapper *),body.has-hovered-card #main-content .text-paragraph .highlight-target.is-active a:not(.inline-card-wrapper *),body.has-hovered-card #main-content .text-paragraph .highlight-target.is-active i:not(.inline-card-wrapper *){color:var(--color-on-canvas)!important;text-shadow:none!important}body.has-hovered-card .inline-card-wrapper:not(.is-hovered){opacity:.5;filter:blur(3px)}.inline-card-wrapper.is-hovered{z-index:10;position:relative}}@media(prefers-reduced-motion:reduce){.text-paragraph,.text-paragraph span:not(.inline-card-wrapper):not(.inline-card-wrapper *),.text-paragraph a:not(.inline-card-wrapper *),.text-paragraph i:not(.inline-card-wrapper *),.inline-card-wrapper{transition:none!important}}
