:root{--content-width:80vw;--content-padding:calc((100vw - var(--content-width)) / 2);--border-color:#dddddd46;--primary:#d8291c;--primary-light:#d83023;--secondary:#272625;--tertiary:#4a6274;--site-header-height:8vh;--dark-card-background:rgb(231, 224, 224);--card-background:rgba(0, 0, 0, 0.034)}html{font-size:20px;@media(max-width:2000px){font-size: 18px;}@media(max-width:1750px){font-size: 17px;}@media(max-width:1500px){font-size: 16px;}@media(max-width:1250px){font-size: 15px;}}.permit-header{font-size:1.5em}body{background-color:#fffcfc;color:#222;font-family:"source sans 3",helvetica neue,sans-serif;line-height:1.5;display:flex;flex-direction:column;margin:0;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;min-height:100vh;font-weight:300}a{text-decoration:none;color:#a30000}.site-header{position:sticky;display:flex;flex-direction:row;top:1rem;height:var(--site-header-height);z-index:100;margin:0 calc((100% - var(--content-width) - var(--site-header-height))/2);margin-top:calc(0px - var(--site-header-height));justify-content:center;align-items:center;background-color:rgb(255,252,252,.95);padding:1rem 0;border-radius:calc(var(--site-header-height)/2);box-shadow:1px 1px 5px rgba(151,151,151,.829);.header-logo { height: 4vh; } a { color: rgb(0, 0, 0); text-decoration: none; font-size: 1rem !important; font-weight: 500 !important; letter-spacing: 0.08em !important; text-transform: uppercase; }}.header-content{flex:1;display:flex;flex-direction:row;justify-content:space-between;align-items:stretch;padding:3.5vh;a { display: flex; flex-direction: column; align-items: center; justify-content: center; }}.nav-list{display:flex;flex-direction:row;align-items:center;gap:3rem;a { font-size: 1.2rem; font-weight: 300; }}.header-menu-container{display:flex;flex-direction:row;gap:3em;align-items:center}.header-menu-button{display:none}.menu-button{width:1.5em;height:1.5em}.header-menu-button .btn{background:0 0;border:none;padding:.25em}.header-menu-button .btn:focus{box-shadow:none}.header-menu-button .dropdown{position:static}.header-menu-button .dropdown-menu{overflow:hidden;position:absolute;left:0;right:0;top:calc(100% + 1em);border-radius:1rem}@media(max-width:1024px){.header-menu-container{display:none}.header-menu-button{display:block}}.dark-section .metric-list>div{border-color:var(--border-color);img { background-color: white; }}.metric-list{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;width:100%;padding-bottom:3rem;@media(max-width:1750px){padding-bottom: 1rem;}>div { border-radius: 2rem; padding: 2rem; text-align: center; display: flex; flex-direction: column; justify-content: flex-start; gap: 1rem; align-items: center; border-style: solid; border-width: 1px 1px 0.5rem 1px; border-color: var(--primary); width: 14vw; aspect-ratio: 3/2; @media (max-width: 1500px) { width: 19vw; } @media (max-width: 1250px) { width: 28vw; } @media (max-width: 750px) { width: 100%; aspect-ratio: auto; } @media (max-width: 1750px) { padding-bottom: 1rem; } img { border-radius: 0.5rem; height: 6em; } em { font-weight: 450; } }}.certification-entity{font-weight:400;font-size:1em}.certification-name{font-weight:350;font-size:1.5em}.dark-section{.certification-entity { color: white; } .certification-name { color: white; }}.certification-card{img { width: 100%; object-fit: contain; max-height: 10vh; padding: 1rem 1rem; }}.renesas-logo{background-color:#0052a3 !important}.arrow-logo{background-color:#000 !important}.products-cta{display:flex;flex-direction:column;align-items:center}.service-grid-actions{display:flex;flex-direction:row;justify-content:flex-end;a { padding-top: 2em; padding-right: 0.5em; color: white; transition: 0.3s; font-size: 1.2em; } a::after { content: "→"; padding-left: 0.5em; } a:hover { color: rgb(124, 189, 247) }}.product-figure{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;img { border-radius: 2rem; width: 100%; height: 100%; object-fit: cover; }}.service-grid,.metric-grid{--grid-gap:5rem;display:flex;flex-wrap:wrap;justify-content:center;width:100%;gap:var(--grid-gap);> * { flex: 0 0 calc((100% - (var(--grid-gap) * 2)) / 3); } @media (max-width: 1500px) { > * { flex: 0 0 calc((100% - var(--grid-gap)) / 2); } } @media (max-width: 700px) { > * { flex: 0 0 100%; } }}main{display:flex;flex-direction:column;flex:1;align-items:stretch;header { padding: 3em calc((100% - var(--content-width))/2); display: flex; flex-direction: column; gap: 3em }}.page-summary{width:40vw;display:flex;flex-direction:column;align-items:flex-end;color:#2b2b2b;text-align:right;font-weight:350;@media(max-width:1024px){width: auto; text-align: center;}}h1,h2,h3{font-family:Roboto}h3{font-weight:400}.one-word-per-line{word-spacing:100vw}.cta-row{display:flex;flex-direction:row;gap:2rem;@media(max-width:1024px){flex-direction: column !important; padding-bottom: 5rem;}}.header-metric-list{display:flex;flex-direction:row;justify-content:space-around;width:100%;padding:2rem calc((100% - var(--content-width))/2);flex-wrap:wrap;gap:2rem;margin-bottom:10rem;>div { border-bottom: 0.3rem solid white; flex: 1; padding: 2rem 1rem; border-radius: 2rem; text-align: center; display: flex; flex-direction: column; align-items: center; .metric-number { font-size: 3rem; font-weight: 500; color: var(--primary-light); text-shadow: 0 0 5px var(--primary); } .metric-label { font-size: 1.5rem; } }}.blurb-closer{display:flex;flex-direction:column;gap:1rem;font-size:1.25em;margin:4rem 0 0;width:100%;.closer-emphasis { font-size: 1.5em; }}.page-summary-container{display:flex;flex-direction:column;align-items:flex-end;color:#000}a.active{font-weight:600 !important;color:var(--primary);&.btn-contact { color: white; }}.animation-drop-in{opacity:0;transform:translateY(-2rem)}.animation-drop-in.animate{animation:slideInFade 2s ease-out forwards}@keyframes slideInFade{0%{opacity:0;transform:translateY(-2rem)}25%{opacity:.75}40%{opacity:1;transform:translateY(0)}65%{opacity:1}100%{opacity:1;transform:translateX(0)}}.slide-list{padding-left:2em;li+li { margin-top: 0.5em; } li { animation: listItemSlide 0.5s ease-out; transition: opacity 0.3 ease-in-out; animation-timeline: view(); animation-fill-mode: both; }}@keyframes listItemSlide{0%{transform:translateX(1rem);opacity:0}10%{transform:translateX(0);opacity:1}}.technologies-section{padding-top:0 !important;z-index:1;gap:10vh}.technologies-display{display:flex;flex-direction:row;justify-content:space-around;flex-wrap:wrap;gap:2rem;padding-bottom:10vh;width:var(--content-width);>div { display: flex; flex-direction: column; gap: 1rem; padding: 1.6rem 2rem; flex: 1; font-size: 1rem; }}.service-card-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;width:100%;> .service-card { flex: 0 0 calc((100% - 3rem) / 3); } @media (max-width: 1200px) { > .service-card { flex: 0 0 calc((100% - 1.5rem) / 2); } } @media (max-width: 1024px) { > .service-card { flex: 0 0 100%; } }}.service-card{background:rgba(255,252,252,.88);border-color:var(--primary-light);border-style:solid;border-width:1px 1px .5rem;border-radius:2rem;overflow:hidden;padding:1rem 1.75rem 1.5rem;display:flex;flex-direction:column;gap:1rem;opacity:0;transform:translateY(-2rem);transition:background .5s,box-shadow .5s;&:hover { background:rgba(255,252,252,0.96); box-shadow:0 0 0 3px var(--primary-light),0 8px 28px rgba(202,19,0,0.2); }}.service-card.animate{animation:slideInFade .8s ease-out forwards}.service-card:nth-child(3n+2).animate{animation-delay:.08s}.service-card:nth-child(3n+3).animate{animation-delay:.16s}@media(max-width:1200px){.service-card:nth-child(2n).animate{animation-delay:.08s}.service-card:nth-child(3n+2).animate{animation-delay:0s}.service-card:nth-child(3n+3).animate{animation-delay:0s}}@media(max-width:700px){.service-card:nth-child(n).animate{animation-delay:0s}}.service-card-name{font-size:2.3em;font-weight:400;line-height:1.15;color:var(--secondary)}.service-card p{margin:0;font-size:.95rem;line-height:1.65;color:#555;flex:1}.service-card-footer{display:flex;align-items:stretch;margin-top:auto;margin-left:-1.75rem;margin-right:-1.75rem;margin-bottom:-1.5rem;border-top:1px solid rgba(0,0,0,8%)}.service-card-tags{display:flex;flex-wrap:wrap;gap:.4rem;align-content:center;flex:1;padding:.75rem 1rem .75rem 1.75rem;span { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; color: rgba(0, 0, 0, 0.4); background: rgba(0, 0, 0, 0.06); padding: 0.2rem 0.55rem; border-radius: 2rem; }}.service-card-link{display:flex;align-items:center;justify-content:center;padding:.75rem 1.25rem;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;flex-shrink:0;transition:background .2s ease;color:#000 !important;&:hover { color:white; }}.service-grid{counter-reset:service-num;padding-top:4rem;padding-bottom:6rem;padding-left:2rem;padding-right:2rem;> div { opacity: 0; transform: translateY(-2rem); text-align: left; font-size: 1rem; position: relative; overflow: hidden; counter-increment: service-num; &::before { content: attr(data-service); position: absolute; bottom: -0.1em; right: 0.5rem; font-size: 3.5rem; font-weight: 800; line-height: 1; color: var(--primary); opacity: 0.07; pointer-events: none; user-select: none; white-space: nowrap; } h4 { color: var(--primary); margin-top: 0; margin-bottom: 1rem; font-size: 1.3rem; } h5 { color: var(--primary); margin-top: 2rem; margin-bottom: 0.5rem; font-size: 1.1rem; } p { margin: 0.75rem 0; line-height: 1.6; } .capabilities { font-size: 0.9rem; opacity: 0.9; font-style: italic; } }}.card-icon{color:var(--primary);width:4rem;height:4rem;margin:2rem auto 0;display:block;svg { width: 100%; height: 100%; }}.discipline-grid>div{text-align:center;.card-icon { margin-bottom: 2rem; } > a { display: block; margin-top: 1rem; font-size: 1rem; font-weight: 400; color: var(--primary); transition: color 0.2s; &::after { content: " →"; } &:hover { color: var(--primary-light); } }}.core-values{> div { display: flex; flex-direction: column; align-items: center; h2 { text-align: center; } h3 { font-size: 2.5em; font-weight: 350; color: rgb(82, 72, 72); } .sub-header { display: block; font-size: 0.72em; font-weight: 700; letter-spacing: 0.13em; text-transform: uppercase; color: rgba(82, 72, 72, 0.6); margin-top: -0.5rem; margin-bottom: 1rem; text-align: center; } }}.dark-section .sub-header{color:rgba(255,255,255,.575) !important}.service-grid>div.animate{animation:slideInFade 2s ease-out forwards}.service-grid>div:nth-child(3n+2).animate{animation-delay:.15s}.service-grid>div:nth-child(3n).animate{animation-delay:.3s}@media(max-width:1750px){.service-grid>div:nth-child(3n+2).animate,.service-grid>div:nth-child(3n).animate{animation-delay:0s}.service-grid>div:nth-child(2n).animate{animation-delay:.15s}}@media(max-width:1024px){.service-grid>div:nth-child(n).animate{animation-delay:0s}}.metric-grid{> div { opacity: 0; transform: translateY(-2rem); text-align: center; padding: 3rem 2rem; display: flex; flex-direction: column; align-items: center; gap: 0.5rem; .metric-number { font-size: 5rem; font-weight: 600; line-height: 1; color: var(--primary-light); text-shadow: 0 0 2px var(--primary); } .metric-label { font-size: 1.2rem; opacity: 0.9; text-transform: uppercase; letter-spacing: 0.05em; } }}.metric-grid>div.animate{animation:slideInFade 2s ease-out forwards}.metric-grid>div:nth-child(3n+2).animate{animation-delay:.15s}.metric-grid>div:nth-child(3n).animate{animation-delay:.3s}@media(max-width:1750px){.metric-grid>div:nth-child(3n+2).animate,.metric-grid>div:nth-child(3n).animate{animation-delay:0s}.metric-grid>div:nth-child(2n).animate{animation-delay:.15s}}@media(max-width:1024px){.metric-grid>div:nth-child(n).animate{animation-delay:0s}}@keyframes case-study-glow{0%,100%{box-shadow:0 0 12px rgba(202,19,0,.4),0 0 30px rgba(202,19,0,.15)}50%{box-shadow:0 0 24px rgba(202,19,0,.7),0 0 55px rgba(202,19,0,.3)}}.service-grid>.case-study-card{text-align:left;padding:3rem 2rem;border-style:solid;border-color:var(--primary);border-width:0 0 .5rem;border-radius:2rem;font-size:1rem;position:relative;overflow:hidden;background-color:var(--card-background);color:inherit;text-decoration:none;display:flex;flex-direction:column;transition:border-color .3s,transform .35s ease;&:hover { border-color:var(--primary-light); transform:scale(1.025); animation:case-study-glow 1.4s ease-in-out infinite; } h3 { margin-top:0; } p { margin:0.75rem 0; line-height:1.6; }}.case-study-image{margin:-3rem -2rem 1.5rem;height:20vh;overflow:hidden;background-color:rgba(0,0,0,4%);img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.55s ease; }}.case-study-card:hover .case-study-image img{transform:scale(1.07)}.dark-section .service-grid>div,.dark-section .service-grid>.case-study-card,.process-overview.dark>div{border-color:rgba(238,238,238,.247);h3 { color: rgb(223, 223, 223); } p { color: rgb(209, 208, 208); } h4 { color: var(--primary-light); } h5 { color: var(--primary-light); }}.process-overview{gap:0;position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));column-gap:3rem;row-gap:2rem;> div { margin-right: 0; margin-bottom: 0; } @media (max-width: 1500px) { grid-template-columns: repeat(3, 1fr); } @media (max-width: 1024px) { grid-template-columns: 1fr; } &.vertical { flex-direction: column; } > div { text-align: center; padding: 2rem 1rem; position: relative; flex: 1; margin-right: 3rem; border-radius: 2rem; border-bottom: 0.5rem solid var(--primary); @media (max-width: 1024px) { margin-right: 0; margin-bottom: 3rem; } .step-number { display: block; font-size: 3rem; font-weight: bold; color: var(--primary); margin-bottom: 1rem; line-height: 1; opacity: 0.8; } h4 { color: var(--primary); margin-top: 0; margin-bottom: 0.75rem; font-size: 1.1rem; } p { margin: 0.5rem 0; line-height: 1.5; font-size: 0.9rem; } &:not(:last-child)::after { content: ''; position: absolute; top: 50%; right: -2.3rem; transform: translateY(-50%); width: 2.3rem; height: 2px; background: linear-gradient(to right, var(--primary), var(--primary)); @media (max-width: 1024px) { top: auto; right: auto; left: 50%; bottom: -2.3rem; transform: translateX(-50%); width: 2px; height: 2.3rem; background: linear-gradient(to bottom, var(--primary), transparent); } } &:not(:last-child)::before { content: '▶'; position: absolute; top: 50%; right: -2.9rem; transform: translateY(-50%); color: var(--primary); font-size: 1rem; z-index: 1; @media (max-width: 1024px) { content: '▼'; top: auto; right: auto; left: 50%; bottom: -2.9rem; transform: translateX(-50%); } } &:last-child { margin-right: 0; @media (max-width: 1024px) { margin-bottom: 0; } } }}.dark-section .process-overview .step-number{color:var(--primary-light)}.contact-channels{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:2rem;@media(max-width:768px){grid-template-columns: 1fr;}> div { text-align: center; padding: 2rem 1.5rem; border-radius: 2rem; border: 0.5rem solid var(--primary); border-width: 1px 1px 0.5rem 1px; } .channel-icon { width: 2.5rem; height: 2.5rem; margin: 0 auto 1.25rem; display: block; color: var(--primary); } h3 { margin: 0 0 0.75rem; font-size: 1.1rem; } p { margin: 0; font-size: 0.9rem; line-height: 1.6; }}.dark-section .contact-channels>div{background-color:rgba(12,12,12,.911);border-color:var(--border-color)}.dark-section .contact-channels .channel-icon{color:var(--primary-light)}.dark-section .contact-channels em{color:rgba(255,255,255,.6);text-shadow:none;font-style:italic;font-size:.9em}.faq-accordion{display:flex;flex-direction:column;border-top:1px solid var(--border-color);width:100%}.faq-item{width:100%;border-bottom:1px solid var(--border-color);summary { cursor: pointer; padding: 1.5rem 0.5rem; font-size: 1.3rem; font-weight: 500; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 1rem; transition: color 0.2s; font-family: Roboto, sans-serif; text-align: left; &::-webkit-details-marker { display: none; } &::after { content: "+"; font-size: 1.5rem; font-weight: 300; transition: transform 0.3s ease; flex-shrink: 0; line-height: 1; } &:hover { color: var(--primary-light); } } > .faq-content { display: block; height: 0; overflow: hidden; transition: height 0.3s ease-out; > p { margin: 0; padding: 0 0.5rem 1.75rem; line-height: 1.6; } }}.faq-item[open]>summary{color:var(--primary-light);&::after { transform:rotate(45deg); }}.process-overview.vertical>div{margin-right:0 !important;margin-bottom:3rem !important}.process-overview.vertical>div:last-child{margin-bottom:0 !important}.process-overview.vertical>div:not(:last-child)::after{top:auto !important;right:auto !important;left:50% !important;bottom:-3rem !important;transform:translateX(-50%) !important;width:2px !important;height:3rem !important;background:linear-gradient(to bottom,var(--primary),transparent) !important}.process-overview.vertical>div:not(:last-child)::before{content:'▼' !important;top:auto !important;right:auto !important;left:50% !important;bottom:-2.9rem !important;transform:translateX(-50%) !important}.pointed-section{--point-depth:8vh;--point-top:calc(100% - var(--point-depth));clip-path:polygon(0% 0%,100% 0,100% var(--point-top),50% 100%,0% var(--point-top));padding-bottom:calc(3 * var(--point-depth)) !important}.marquee-caption{font-size:2rem}.dark-section{background-color:var(--secondary);color:#fff;background-size:cover !important;background-position:50%;overflow:hidden;position:relative;em { color: var(--primary-light); text-shadow: 1px 1px 1px var(--primary); }}.btn-contact{display:flex;flex-direction:column;align-items:center;justify-content:center;height:3rem;padding:0 1.5rem;border-radius:1.5rem;border:2px solid #fff;color:#fff !important;background-color:var(--primary);font-weight:400 !important;box-shadow:1px 1px 3px rgba(71,71,71,.363)}.btn-contact:hover{color:#c7e4b3 !important}ul{li:not(:last-child) { margin-bottom:1rem; }}em{font-style:normal}h1,h2{em { color: var(--primary); }}li{em { font-weight: 450; }}.footer-partners{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:2.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.15)}.dark-background{background-color:rgba(5,33,59,.842);padding:2em 0}.footer-partner-logo{height:1.75rem;width:auto;filter:brightness(0)invert(1);opacity:.7;transition:opacity .2s ease;&:hover { opacity:1; }}.footer-bottom-row{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end;margin-top:2rem;flex-wrap:wrap;gap:.5rem}.copyright{font-size:1.3rem}.footer-credential{font-size:1.1rem;opacity:.75;text-align:right}footer{display:flex;flex-direction:column;align-items:center;padding:1em;font-size:20px;color:#fff;background-color:var(--primary);border-top:.5rem solid #ffe7ba;a { color: rgb(248, 248, 248); font-weight: 400; } a:hover { color: rgb(196, 228, 155); } a.active { color: white; border-bottom: 1px solid white; } h3 { color: white !important; } .dropdown-menu-vertical { background-color: var(--primary); border: 1px solid white; border-radius: 1em; }}.dark-section{a { color: white; }}.footer-content{width:var(--content-width)}.footer-company-name{margin-bottom:3rem;margin-top:2rem;color:var(--secondary)}.footer-rows{display:flex;flex-direction:row;justify-content:space-between;@media(max-width:1024px){flex-direction: column;}.footer-navigation { display: flex; flex-direction: column; ul { list-style: none; padding-left: 0; li { margin-bottom: 0.1em; } } }}.dropdown-menu-vertical{padding:1ch 2ch;list-style:none}.marquee-container{display:flex;flex-direction:row;overflow:hidden;width:100%;background-color:rgba(65,60,60,.151);position:relative;height:15vh;align-items:center;padding:4rem 0;.marquee-interior { position: absolute; display: flex; flex-direction: row; width: fit-content; animation: marquee-scroll 30s linear infinite; transition: 3s; }}@keyframes marquee-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.marquee-interior:hover{animation-play-state:paused}.customer-logos{display:flex;flex-direction:row;>* { margin: 1rem; border-radius: 1.5rem; background-color: white; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1rem; flex: 1; width: 15rem; img { width: 100%; height: auto; } }}.cta-blurb{display:flex;flex-direction:column;gap:4rem !important;padding:2.5rem 0;>div { display: flex; flex-direction: column; align-items: flex-start; }}.full-colour-background{background-color:var(--secondary);padding:2rem;border-radius:2rem}.vertical-timeline{position:relative;width:100%;max-width:56rem;margin-left:auto;margin-right:auto;display:flex;flex-direction:column;padding:1rem 0}.vertical-timeline::before{content:'';position:absolute;left:calc(50% - 1.5px);top:0;bottom:0;width:3px;background:linear-gradient(to bottom,var(--primary),rgba(202,19,0,.25));transform:scaleY(0);transform-origin:top center}.vertical-timeline.animate::before{animation:timelineLineGrow 2.5s ease-out forwards}.timeline-chapter-break{display:flex;align-items:center;gap:2rem;padding:3rem 0;position:relative;z-index:2}.timeline-chapter-rule{flex:1;height:2px;background:linear-gradient(to right,transparent,var(--primary));opacity:.3;flex-shrink:0;min-width:2rem}.timeline-chapter-rule:last-child{background:linear-gradient(to left,transparent,var(--primary))}.timeline-chapter-content{flex-shrink:0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.75rem 2.5rem;border:2px solid var(--primary);border-radius:.5rem;max-width:28rem;background:#fffcfc;position:relative;z-index:2}.timeline-chapter-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}.timeline-chapter-content h2{font-size:1.75rem;font-weight:350;margin:0}.timeline-chapter-content p{font-size:.95rem;opacity:.75;margin:0;line-height:1.5}@keyframes timelineLineGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}.timeline-item{display:grid;grid-template-columns:1fr 5rem 1fr;align-items:start;padding:1.75rem 0}.timeline-axis{grid-column:2;grid-row:1;position:relative;display:flex;justify-content:center;padding-top:1.4rem;z-index:1}.timeline-item:nth-child(odd of .timeline-item) .timeline-card{grid-column:1;grid-row:1;padding-right:2.5rem;text-align:right;opacity:0;transform:translateX(-4rem)}.timeline-item:nth-child(even of .timeline-item) .timeline-card{grid-column:3;grid-row:1;padding-left:2.5rem;text-align:left;opacity:0;transform:translateX(4rem)}.timeline-item.animate:nth-child(odd of .timeline-item) .timeline-card{animation:timelineSlideLeft .9s cubic-bezier(.2,.8,.3,1).1s forwards}.timeline-item.animate:nth-child(even of .timeline-item) .timeline-card{animation:timelineSlideRight .9s cubic-bezier(.2,.8,.3,1).1s forwards}@keyframes timelineSlideLeft{from{opacity:0;transform:translateX(-4rem)}to{opacity:1;transform:translateX(0)}}@keyframes timelineSlideRight{from{opacity:0;transform:translateX(4rem)}to{opacity:1;transform:translateX(0)}}.timeline-dot{width:1.1rem;height:1.1rem;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px #fff8f8,0 0 0 7px var(--primary);flex-shrink:0;transform:scale(0)}.timeline-item.animate .timeline-dot{animation:timelineDotPop .4s cubic-bezier(.34,1.56,.64,1).05s forwards}@keyframes timelineDotPop{from{transform:scale(0)}to{transform:scale(1)}}.timeline-axis::before,.timeline-axis::after{content:'';position:absolute;top:calc(1.4rem + .42rem);height:2px;background:var(--primary);opacity:.3}.timeline-item:nth-child(odd of .timeline-item) .timeline-axis::before{right:50%;left:0}.timeline-item:nth-child(odd of .timeline-item) .timeline-axis::after{display:none}.timeline-item:nth-child(even of .timeline-item) .timeline-axis::after{left:50%;right:0}.timeline-item:nth-child(even of .timeline-item) .timeline-axis::before{display:none}.timeline-card{.timeline-year { display: block; font-size: 2.25rem; font-weight: 700; color: var(--primary); line-height: 1; margin-bottom: 0.3rem; opacity: 0.85; } h3, h4 { margin: 0 0 0.4rem; font-size: 1.1rem; font-weight: 500; color: var(--secondary); } p { margin: 0; font-size: 0.9rem; line-height: 1.65; color: #555; }}.dark-section .timeline-dot{box-shadow:0 0 0 4px var(--secondary),0 0 0 7px var(--primary-light)}.dark-section .vertical-timeline .timeline-card{.timeline-year { color: var(--primary-light); } h3, h4 { color: white; } p { color: rgba(255, 255, 255, 0.75); }}.dark-section .timeline-axis::before,.dark-section .timeline-axis::after{opacity:.5}@media(max-width:1024px){.vertical-timeline::before{left:1.6rem}.timeline-item{grid-template-columns:3.5rem 1fr}.timeline-axis{grid-column:1;grid-row:1;justify-content:center;padding-top:.2rem}.timeline-item:nth-child(odd of .timeline-item) .timeline-card,.timeline-item:nth-child(even of .timeline-item) .timeline-card{grid-column:2;grid-row:1;text-align:left;padding-left:1.5rem;padding-right:0;opacity:0;transform:translateX(4rem)}.timeline-item.animate:nth-child(odd of .timeline-item) .timeline-card,.timeline-item.animate:nth-child(even of .timeline-item) .timeline-card{animation:timelineSlideRight .9s cubic-bezier(.2,.8,.3,1).1s forwards}.timeline-axis::before,.timeline-axis::after{display:none !important}.timeline-chapter-rule{display:none}.timeline-chapter-break{padding:2rem 0;gap:0}.timeline-chapter-content{flex-shrink:1;min-width:0;max-width:none;width:100%;padding:1.25rem 1.5rem}}.address-hours{display:flex;flex-direction:column;gap:1rem}.address-hours p{margin:0;line-height:1.6}.contact-form{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:900px;margin:0 auto}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;@media(max-width:1024px){grid-template-columns: 1fr; gap: 1rem;}}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group.full-width{grid-column:1/-1}.contact-form label{font-size:1.1em;font-weight:400;color:var(--secondary)}.contact-form input,.contact-form textarea{font-family:"source sans 3",helvetica neue,sans-serif;padding:.75rem 1rem;border:1px solid #707070;border-radius:1rem;background-color:#fff;color:var(--secondary);transition:border-color .3s ease,box-shadow .3s ease;@media(max-width:1024px){font-size: 0.9em; padding: 0.65rem 0.9rem;}}.contact-form select{padding:.75rem 1rem;border-radius:1rem}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(202,19,0,.1)}.contact-form textarea{resize:vertical;min-height:120px;line-height:1.5}.form-submit{display:flex;align-items:center;justify-content:center;gap:.5em;transition:gap .3s ease;font-size:1.25em;font-family:Roboto,arial;font-weight:450;border:none;border-bottom:.3rem solid var(--primary);border-radius:3rem;color:var(--primary);background-color:transparent;padding:1rem 2rem;margin-top:.5rem;cursor:pointer;transition:all .5s ease;box-shadow:1px 1px 5px black;background-color:rgba(255,255,255,.418)}.form-submit:hover{color:var(--secondary);border-color:var(--secondary)}.form-submit .arrow{display:inline-block;transition:transform .3s ease}.dark-section .form-submit{color:#fff}.dark-section .contact-form input,.dark-section .contact-form textarea{background-color:rgba(255,255,255,.95)}.dark-section .contact-form label{color:#fff;font-weight:450}.form-error{padding:.75rem 1rem;background-color:#fff3f3;border:1px solid var(--primary);border-radius:.5rem;color:var(--primary);font-size:.95em}.form-file-input{font-family:"source sans 3",helvetica neue,sans-serif;font-size:.95em;color:var(--secondary);padding:.6rem .75rem;border:1px solid #707070;border-radius:1rem;background-color:#fff;cursor:pointer;transition:border-color .3s ease,box-shadow .3s ease}.form-file-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(202,19,0,.1)}.dark-section .form-file-input{background-color:rgba(255,255,255,.95)}.form-success-popup{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.form-success-popup__backdrop{position:absolute;inset:0;background-color:rgba(0,0,0,.55)}.form-success-popup__card{position:relative;z-index:1;background:#fff;border-radius:1rem;padding:2.5rem 3rem;max-width:480px;width:90%;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.35)}.form-success-popup__message{font-size:1.15em;color:var(--secondary);margin-bottom:1.5rem;line-height:1.6}.form-success-popup__close{font-size:1em;font-family:Roboto,arial;font-weight:450;border:none;border-bottom:.2rem solid var(--primary);border-radius:3rem;color:var(--primary);background-color:transparent;padding:.6rem 1.75rem;cursor:pointer;transition:all .3s ease;box-shadow:1px 1px 4px rgba(0,0,0,.2)}.form-success-popup__close:hover{color:var(--secondary);border-color:var(--secondary)}.cta-link{display:flex;align-items:center;justify-content:center;background-color:var(--primary);color:#fff;border:5px solid #fff;box-shadow:1px 1px 3px rgba(53,53,53,.801);gap:.5em;transition:gap .3s ease;font-family:Roboto,arial;border-radius:1.5em;min-height:3em;padding:.5em 1.5rem;font-weight:450;transition:.5s;font-size:1.2em}.dark-section .cta-link{background-color:var(--primary-light);color:#fff}.cta-link:hover{color:var(--secondary);border-color:var(--secondary);background-color:var(--primary-light);.arrow { transform: translateX(0.25em); }}.arrow{display:inline-block;transition:transform .3s ease}.cycle-words{display:inline-block;transition:opacity .3s ease-in-out}.cycle-fade-out{opacity:0}.cycle-slide-in{animation:slideInFade .5s ease-out}.gallery-filter-area{background-color:#0e0e0e;position:relative;@media(max-width:1024px){display: none;}}.gallery-filter-menu{@media(max-width:1024px){position: relative; &.filter-area-sticky{position:fixed;top:calc(var(--site-header-height) + 1rem);left:0;right:0;z-index:50}}}.gallery-filter-container{display:flex;flex-direction:column;padding:2rem 1rem;padding-top:calc((var(--site-header-height)) + 4.5rem);gap:1rem;position:relative;flex:1}.gallery-section{padding-top:0 !important;padding-bottom:0 !important}.gallery-wrapper{--local-border-color:rgb(104, 104, 104);position:relative;display:flex;flex-direction:row;width:100%;@media(max-width:1024px){flex-direction: column;}}.gallery-filter-menu{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem;button { display: flex; flex-direction: row; background-color: rgb(56, 54, 54); border-radius: 2rem; padding: 0.5rem 2rem; border: 3px solid rgb(202, 202, 202); color: white; font-size: 1.2em; gap: 1rem; img { width: 32px; height: auto; } }}.gallery-filter-menu.hidden{display:none}.gallery-filter-container.mobile{position:absolute;z-index:100;top:100%;left:.5rem;right:.5rem;background-color:var(--secondary);border:3px solid #cacaca;border-radius:1rem;padding:1rem;font-size:.8em;max-height:600px;overflow:hidden;transition:max-height .35s ease,padding .35s ease,border-width .35s ease}.gallery-filter-container.mobile.hidden{max-height:0;padding:0;border-width:0}.gallery-filter-container.hidden:not(.mobile){display:none}.gallery-filters{display:flex;flex-direction:column;flex-wrap:wrap;justify-content:flex-start;border:1px solid var(--border-color);border-radius:1.5rem;overflow:hidden;@media(max-width:1024px){flex-direction: row; justify-content: flex-start; border: none; border-radius: 0; gap: 0.5rem}}.gallery-filter-btn{border:none;padding:.5rem 1rem;background:0 0;color:#fff;cursor:pointer;font-size:.8em;transition:.3s;text-wrap:nowrap;border-top:1px solid var(--border-color);&:first-child { border-top:none; } @media (max-width:1024px) { border:1px solid var(--border-color)!important; border-radius:2rem; padding:0.5rem 1rem!important; }}.gallery-filter-btn:hover{background:rgba(255,255,255,.15)}.gallery-filter-btn.active{background:var(--primary-light);border-color:var(--primary-light);color:#fff}.gallery-filter-btn:disabled{cursor:not-allowed;pointer-events:none;color:grey}.gallery-grid-content{width:100%;padding:.15rem;--grid-size:60;background-color:var(--secondary);@media(max-width:1024px){--grid-size: 1;>.gallery-grid-item,>.gallery-grid-item-medium-small,>.gallery-grid-item-medium,>.gallery-grid-item-large{grid-column:span 1}}--image-border-radius:1rem;display:grid;gap:.15rem;grid-template-columns:repeat(var(--grid-size),1fr);>.gallery-grid-item { grid-column: span 10; font-size: 1.2em; --point-depth: 2rem; --point-height: calc(100% - var(--point-depth)); background-color: rgb(255, 252, 252); aspect-ratio: 1/1; overflow: visible; position: relative; img { width: 100%; height: 100%; object-fit: contain; } >.gallery-grid-item-shade { position: absolute; bottom: 0; left: 0; right: 0; z-index: 10; transition: opacity 0.5s; opacity: 0; display: flex; flex-direction: column; align-items: center ; margin-inline: auto; overflow: hidden; color: var(--secondary); background: linear-gradient( transparent, rgb(255, 252, 252)); text-shadow: 0 0 0.5em rgb(255, 252, 252); padding: 1rem; padding-top: 2em; @media (max-width: 1024px) { transition: opacity 0.1s; >.gallery-item-product-name, >.gallery-item-brand-name { transition: none; } } >.gallery-item-product-name { z-index: 2; font-weight: 450; font-size: 1.4em; transform: translateY(1rem); transition: transform 0.4s ease; text-align: center; } >.gallery-item-brand-name { z-index: 2; font-weight: 450; font-size: 0.8em; transform: translateY(-1rem); transition: transform 0.4s ease; margin-bottom: -0.5em; text-align: center; } } } >.gallery-grid-item:hover { >.gallery-industry-indicator { opacity: 1; } >.gallery-grid-item-shade { opacity: 1; >.gallery-item-product-name { transform: translateY(0); } >.gallery-item-brand-name { transform: translateY(0); } } } >.gallery-grid-item-medium-small { grid-column: span 12; font-size: 1.1em; } >.gallery-grid-item-medium { grid-column: span 15; font-size: 1.3em; } >.gallery-grid-item-large { grid-column: span 20; font-size: 1.6em; }}.gallery-industry-indicator{color:#000;position:absolute;top:1em;left:1em;border-radius:100px;box-shadow:0 .1em .1em rgba(48,48,48,.397);padding:.25em 1em;font-size:.65em;opacity:0;transition-duration:1s;background-color:#fffcfc;will-change:opacity;transform:translateZ(0)}.gallery-header-container{width:auto !important;display:flex;flex-direction:column;.gallery-header { padding: 1rem; padding-bottom: 2rem; @media (max-width: 1024px) { width: var(--content-width); } } @media (max-width: 1024px) { align-items: center; }}.gallery-grid-container{display:flex;flex-direction:column;padding-top:calc(var(--site-header-height) + 3rem);flex:1;min-width:0}:root{--content-width:80vw;--content-padding:calc((100vw - var(--content-width)) / 2);--border-color:#dddddd46;--primary:#d8291c;--primary-light:#d83023;--secondary:#272625;--tertiary:#4a6274;--site-header-height:8vh;--dark-card-background:rgb(231, 224, 224);--card-background:rgba(0, 0, 0, 0.034)}html{font-size:20px;@media(max-width:2000px){font-size: 18px;}@media(max-width:1750px){font-size: 17px;}@media(max-width:1500px){font-size: 16px;}@media(max-width:1250px){font-size: 15px;}}.permit-header{font-size:1.5em}body{background-color:#fffcfc;color:#222;font-family:"source sans 3",helvetica neue,sans-serif;line-height:1.5;display:flex;flex-direction:column;margin:0;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;min-height:100vh;font-weight:300}a{text-decoration:none;color:#a30000}.site-header{position:sticky;display:flex;flex-direction:row;top:1rem;height:var(--site-header-height);z-index:100;margin:0 calc((100% - var(--content-width) - var(--site-header-height))/2);margin-top:calc(0px - var(--site-header-height));justify-content:center;align-items:center;background-color:rgb(255,252,252,.95);padding:1rem 0;border-radius:calc(var(--site-header-height)/2);box-shadow:1px 1px 5px rgba(151,151,151,.829);.header-logo { height: 4vh; } a { color: rgb(0, 0, 0); text-decoration: none; font-size: 1rem !important; font-weight: 500 !important; letter-spacing: 0.08em !important; text-transform: uppercase; }}.header-content{flex:1;display:flex;flex-direction:row;justify-content:space-between;align-items:stretch;padding:3.5vh;a { display: flex; flex-direction: column; align-items: center; justify-content: center; }}.nav-list{display:flex;flex-direction:row;align-items:center;gap:3rem;a { font-size: 1.2rem; font-weight: 300; }}.header-menu-container{display:flex;flex-direction:row;gap:3em;align-items:center}.header-menu-button{display:none}.menu-button{width:1.5em;height:1.5em}.header-menu-button .btn{background:0 0;border:none;padding:.25em}.header-menu-button .btn:focus{box-shadow:none}.header-menu-button .dropdown{position:static}.header-menu-button .dropdown-menu{overflow:hidden;position:absolute;left:0;right:0;top:calc(100% + 1em);border-radius:1rem}@media(max-width:1024px){.header-menu-container{display:none}.header-menu-button{display:block}}.dark-section .metric-list>div{border-color:var(--border-color);img { background-color: white; }}.metric-list{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;width:100%;padding-bottom:3rem;@media(max-width:1750px){padding-bottom: 1rem;}>div { border-radius: 2rem; padding: 2rem; text-align: center; display: flex; flex-direction: column; justify-content: flex-start; gap: 1rem; align-items: center; border-style: solid; border-width: 1px 1px 0.5rem 1px; border-color: var(--primary); width: 14vw; aspect-ratio: 3/2; @media (max-width: 1500px) { width: 19vw; } @media (max-width: 1250px) { width: 28vw; } @media (max-width: 750px) { width: 100%; aspect-ratio: auto; } @media (max-width: 1750px) { padding-bottom: 1rem; } img { border-radius: 0.5rem; height: 6em; } em { font-weight: 450; } }}.certification-entity{font-weight:400;font-size:1em}.certification-name{font-weight:350;font-size:1.5em}.dark-section{.certification-entity { color: white; } .certification-name { color: white; }}.certification-card{img { width: 100%; object-fit: contain; max-height: 10vh; padding: 1rem 1rem; }}.renesas-logo{background-color:#0052a3 !important}.arrow-logo{background-color:#000 !important}.products-cta{display:flex;flex-direction:column;align-items:center}.service-grid-actions{display:flex;flex-direction:row;justify-content:flex-end;a { padding-top: 2em; padding-right: 0.5em; color: white; transition: 0.3s; font-size: 1.2em; } a::after { content: "→"; padding-left: 0.5em; } a:hover { color: rgb(124, 189, 247) }}.product-figure{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;img { border-radius: 2rem; width: 100%; height: 100%; object-fit: cover; }}.service-grid,.metric-grid{--grid-gap:5rem;display:flex;flex-wrap:wrap;justify-content:center;width:100%;gap:var(--grid-gap);> * { flex: 0 0 calc((100% - (var(--grid-gap) * 2)) / 3); } @media (max-width: 1500px) { > * { flex: 0 0 calc((100% - var(--grid-gap)) / 2); } } @media (max-width: 700px) { > * { flex: 0 0 100%; } }}main{display:flex;flex-direction:column;flex:1;align-items:stretch;header { padding: 3em calc((100% - var(--content-width))/2); display: flex; flex-direction: column; gap: 3em }}.page-summary{width:40vw;display:flex;flex-direction:column;align-items:flex-end;color:#2b2b2b;text-align:right;font-weight:350;@media(max-width:1024px){width: auto; text-align: center;}}h1,h2,h3{font-family:Roboto}h3{font-weight:400}.one-word-per-line{word-spacing:100vw}.cta-row{display:flex;flex-direction:row;gap:2rem;@media(max-width:1024px){flex-direction: column !important; padding-bottom: 5rem;}}.header-metric-list{display:flex;flex-direction:row;justify-content:space-around;width:100%;padding:2rem calc((100% - var(--content-width))/2);flex-wrap:wrap;gap:2rem;margin-bottom:10rem;>div { border-bottom: 0.3rem solid white; flex: 1; padding: 2rem 1rem; border-radius: 2rem; text-align: center; display: flex; flex-direction: column; align-items: center; .metric-number { font-size: 3rem; font-weight: 500; color: var(--primary-light); text-shadow: 0 0 5px var(--primary); } .metric-label { font-size: 1.5rem; } }}.blurb-closer{display:flex;flex-direction:column;gap:1rem;font-size:1.25em;margin:4rem 0 0;width:100%;.closer-emphasis { font-size: 1.5em; }}.page-summary-container{display:flex;flex-direction:column;align-items:flex-end;color:#000}a.active{font-weight:600 !important;color:var(--primary);&.btn-contact { color: white; }}.animation-drop-in{opacity:0;transform:translateY(-2rem)}.animation-drop-in.animate{animation:slideInFade 2s ease-out forwards}@keyframes slideInFade{0%{opacity:0;transform:translateY(-2rem)}25%{opacity:.75}40%{opacity:1;transform:translateY(0)}65%{opacity:1}100%{opacity:1;transform:translateX(0)}}.slide-list{padding-left:2em;li+li { margin-top: 0.5em; } li { animation: listItemSlide 0.5s ease-out; transition: opacity 0.3 ease-in-out; animation-timeline: view(); animation-fill-mode: both; }}@keyframes listItemSlide{0%{transform:translateX(1rem);opacity:0}10%{transform:translateX(0);opacity:1}}.technologies-section{padding-top:0 !important;z-index:1;gap:10vh}.technologies-display{display:flex;flex-direction:row;justify-content:space-around;flex-wrap:wrap;gap:2rem;padding-bottom:10vh;width:var(--content-width);>div { display: flex; flex-direction: column; gap: 1rem; padding: 1.6rem 2rem; flex: 1; font-size: 1rem; }}.service-card-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;width:100%;> .service-card { flex: 0 0 calc((100% - 3rem) / 3); } @media (max-width: 1200px) { > .service-card { flex: 0 0 calc((100% - 1.5rem) / 2); } } @media (max-width: 1024px) { > .service-card { flex: 0 0 100%; } }}.service-card{background:rgba(255,252,252,.88);border-color:var(--primary-light);border-style:solid;border-width:1px 1px .5rem;border-radius:2rem;overflow:hidden;padding:1rem 1.75rem 1.5rem;display:flex;flex-direction:column;gap:1rem;opacity:0;transform:translateY(-2rem);transition:background .5s,box-shadow .5s;&:hover { background:rgba(255,252,252,0.96); box-shadow:0 0 0 3px var(--primary-light),0 8px 28px rgba(202,19,0,0.2); }}.service-card.animate{animation:slideInFade .8s ease-out forwards}.service-card:nth-child(3n+2).animate{animation-delay:.08s}.service-card:nth-child(3n+3).animate{animation-delay:.16s}@media(max-width:1200px){.service-card:nth-child(2n).animate{animation-delay:.08s}.service-card:nth-child(3n+2).animate{animation-delay:0s}.service-card:nth-child(3n+3).animate{animation-delay:0s}}@media(max-width:700px){.service-card:nth-child(n).animate{animation-delay:0s}}.service-card-name{font-size:2.3em;font-weight:400;line-height:1.15;color:var(--secondary)}.service-card p{margin:0;font-size:.95rem;line-height:1.65;color:#555;flex:1}.service-card-footer{display:flex;align-items:stretch;margin-top:auto;margin-left:-1.75rem;margin-right:-1.75rem;margin-bottom:-1.5rem;border-top:1px solid rgba(0,0,0,8%)}.service-card-tags{display:flex;flex-wrap:wrap;gap:.4rem;align-content:center;flex:1;padding:.75rem 1rem .75rem 1.75rem;span { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; color: rgba(0, 0, 0, 0.4); background: rgba(0, 0, 0, 0.06); padding: 0.2rem 0.55rem; border-radius: 2rem; }}.service-card-link{display:flex;align-items:center;justify-content:center;padding:.75rem 1.25rem;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;flex-shrink:0;transition:background .2s ease;color:#000 !important;&:hover { color:white; }}.service-grid{counter-reset:service-num;padding-top:4rem;padding-bottom:6rem;padding-left:2rem;padding-right:2rem;> div { opacity: 0; transform: translateY(-2rem); text-align: left; font-size: 1rem; position: relative; overflow: hidden; counter-increment: service-num; &::before { content: attr(data-service); position: absolute; bottom: -0.1em; right: 0.5rem; font-size: 3.5rem; font-weight: 800; line-height: 1; color: var(--primary); opacity: 0.07; pointer-events: none; user-select: none; white-space: nowrap; } h4 { color: var(--primary); margin-top: 0; margin-bottom: 1rem; font-size: 1.3rem; } h5 { color: var(--primary); margin-top: 2rem; margin-bottom: 0.5rem; font-size: 1.1rem; } p { margin: 0.75rem 0; line-height: 1.6; } .capabilities { font-size: 0.9rem; opacity: 0.9; font-style: italic; } }}.card-icon{color:var(--primary);width:4rem;height:4rem;margin:2rem auto 0;display:block;svg { width: 100%; height: 100%; }}.discipline-grid>div{text-align:center;.card-icon { margin-bottom: 2rem; } > a { display: block; margin-top: 1rem; font-size: 1rem; font-weight: 400; color: var(--primary); transition: color 0.2s; &::after { content: " →"; } &:hover { color: var(--primary-light); } }}.core-values{> div { display: flex; flex-direction: column; align-items: center; h2 { text-align: center; } h3 { font-size: 2.5em; font-weight: 350; color: rgb(82, 72, 72); } .sub-header { display: block; font-size: 0.72em; font-weight: 700; letter-spacing: 0.13em; text-transform: uppercase; color: rgba(82, 72, 72, 0.6); margin-top: -0.5rem; margin-bottom: 1rem; text-align: center; } }}.dark-section .sub-header{color:rgba(255,255,255,.575) !important}.service-grid>div.animate{animation:slideInFade 2s ease-out forwards}.service-grid>div:nth-child(3n+2).animate{animation-delay:.15s}.service-grid>div:nth-child(3n).animate{animation-delay:.3s}@media(max-width:1750px){.service-grid>div:nth-child(3n+2).animate,.service-grid>div:nth-child(3n).animate{animation-delay:0s}.service-grid>div:nth-child(2n).animate{animation-delay:.15s}}@media(max-width:1024px){.service-grid>div:nth-child(n).animate{animation-delay:0s}}.metric-grid{> div { opacity: 0; transform: translateY(-2rem); text-align: center; padding: 3rem 2rem; display: flex; flex-direction: column; align-items: center; gap: 0.5rem; .metric-number { font-size: 5rem; font-weight: 600; line-height: 1; color: var(--primary-light); text-shadow: 0 0 2px var(--primary); } .metric-label { font-size: 1.2rem; opacity: 0.9; text-transform: uppercase; letter-spacing: 0.05em; } }}.metric-grid>div.animate{animation:slideInFade 2s ease-out forwards}.metric-grid>div:nth-child(3n+2).animate{animation-delay:.15s}.metric-grid>div:nth-child(3n).animate{animation-delay:.3s}@media(max-width:1750px){.metric-grid>div:nth-child(3n+2).animate,.metric-grid>div:nth-child(3n).animate{animation-delay:0s}.metric-grid>div:nth-child(2n).animate{animation-delay:.15s}}@media(max-width:1024px){.metric-grid>div:nth-child(n).animate{animation-delay:0s}}@keyframes case-study-glow{0%,100%{box-shadow:0 0 12px rgba(202,19,0,.4),0 0 30px rgba(202,19,0,.15)}50%{box-shadow:0 0 24px rgba(202,19,0,.7),0 0 55px rgba(202,19,0,.3)}}.service-grid>.case-study-card{text-align:left;padding:3rem 2rem;border-style:solid;border-color:var(--primary);border-width:0 0 .5rem;border-radius:2rem;font-size:1rem;position:relative;overflow:hidden;background-color:var(--card-background);color:inherit;text-decoration:none;display:flex;flex-direction:column;transition:border-color .3s,transform .35s ease;&:hover { border-color:var(--primary-light); transform:scale(1.025); animation:case-study-glow 1.4s ease-in-out infinite; } h3 { margin-top:0; } p { margin:0.75rem 0; line-height:1.6; }}.case-study-image{margin:-3rem -2rem 1.5rem;height:20vh;overflow:hidden;background-color:rgba(0,0,0,4%);img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.55s ease; }}.case-study-card:hover .case-study-image img{transform:scale(1.07)}.dark-section .service-grid>div,.dark-section .service-grid>.case-study-card,.process-overview.dark>div{border-color:rgba(238,238,238,.247);h3 { color: rgb(223, 223, 223); } p { color: rgb(209, 208, 208); } h4 { color: var(--primary-light); } h5 { color: var(--primary-light); }}.process-overview{gap:0;position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));column-gap:3rem;row-gap:2rem;> div { margin-right: 0; margin-bottom: 0; } @media (max-width: 1500px) { grid-template-columns: repeat(3, 1fr); } @media (max-width: 1024px) { grid-template-columns: 1fr; } &.vertical { flex-direction: column; } > div { text-align: center; padding: 2rem 1rem; position: relative; flex: 1; margin-right: 3rem; border-radius: 2rem; border-bottom: 0.5rem solid var(--primary); @media (max-width: 1024px) { margin-right: 0; margin-bottom: 3rem; } .step-number { display: block; font-size: 3rem; font-weight: bold; color: var(--primary); margin-bottom: 1rem; line-height: 1; opacity: 0.8; } h4 { color: var(--primary); margin-top: 0; margin-bottom: 0.75rem; font-size: 1.1rem; } p { margin: 0.5rem 0; line-height: 1.5; font-size: 0.9rem; } &:not(:last-child)::after { content: ''; position: absolute; top: 50%; right: -2.3rem; transform: translateY(-50%); width: 2.3rem; height: 2px; background: linear-gradient(to right, var(--primary), var(--primary)); @media (max-width: 1024px) { top: auto; right: auto; left: 50%; bottom: -2.3rem; transform: translateX(-50%); width: 2px; height: 2.3rem; background: linear-gradient(to bottom, var(--primary), transparent); } } &:not(:last-child)::before { content: '▶'; position: absolute; top: 50%; right: -2.9rem; transform: translateY(-50%); color: var(--primary); font-size: 1rem; z-index: 1; @media (max-width: 1024px) { content: '▼'; top: auto; right: auto; left: 50%; bottom: -2.9rem; transform: translateX(-50%); } } &:last-child { margin-right: 0; @media (max-width: 1024px) { margin-bottom: 0; } } }}.dark-section .process-overview .step-number{color:var(--primary-light)}.contact-channels{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:2rem;@media(max-width:768px){grid-template-columns: 1fr;}> div { text-align: center; padding: 2rem 1.5rem; border-radius: 2rem; border: 0.5rem solid var(--primary); border-width: 1px 1px 0.5rem 1px; } .channel-icon { width: 2.5rem; height: 2.5rem; margin: 0 auto 1.25rem; display: block; color: var(--primary); } h3 { margin: 0 0 0.75rem; font-size: 1.1rem; } p { margin: 0; font-size: 0.9rem; line-height: 1.6; }}.dark-section .contact-channels>div{background-color:rgba(12,12,12,.911);border-color:var(--border-color)}.dark-section .contact-channels .channel-icon{color:var(--primary-light)}.dark-section .contact-channels em{color:rgba(255,255,255,.6);text-shadow:none;font-style:italic;font-size:.9em}.faq-accordion{display:flex;flex-direction:column;border-top:1px solid var(--border-color);width:100%}.faq-item{width:100%;border-bottom:1px solid var(--border-color);summary { cursor: pointer; padding: 1.5rem 0.5rem; font-size: 1.3rem; font-weight: 500; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 1rem; transition: color 0.2s; font-family: Roboto, sans-serif; text-align: left; &::-webkit-details-marker { display: none; } &::after { content: "+"; font-size: 1.5rem; font-weight: 300; transition: transform 0.3s ease; flex-shrink: 0; line-height: 1; } &:hover { color: var(--primary-light); } } > .faq-content { display: block; height: 0; overflow: hidden; transition: height 0.3s ease-out; > p { margin: 0; padding: 0 0.5rem 1.75rem; line-height: 1.6; } }}.faq-item[open]>summary{color:var(--primary-light);&::after { transform:rotate(45deg); }}.process-overview.vertical>div{margin-right:0 !important;margin-bottom:3rem !important}.process-overview.vertical>div:last-child{margin-bottom:0 !important}.process-overview.vertical>div:not(:last-child)::after{top:auto !important;right:auto !important;left:50% !important;bottom:-3rem !important;transform:translateX(-50%) !important;width:2px !important;height:3rem !important;background:linear-gradient(to bottom,var(--primary),transparent) !important}.process-overview.vertical>div:not(:last-child)::before{content:'▼' !important;top:auto !important;right:auto !important;left:50% !important;bottom:-2.9rem !important;transform:translateX(-50%) !important}.pointed-section{--point-depth:8vh;--point-top:calc(100% - var(--point-depth));clip-path:polygon(0% 0%,100% 0,100% var(--point-top),50% 100%,0% var(--point-top));padding-bottom:calc(3 * var(--point-depth)) !important}.marquee-caption{font-size:2rem}.dark-section{background-color:var(--secondary);color:#fff;background-size:cover !important;background-position:50%;overflow:hidden;position:relative;em { color: var(--primary-light); text-shadow: 1px 1px 1px var(--primary); }}.btn-contact{display:flex;flex-direction:column;align-items:center;justify-content:center;height:3rem;padding:0 1.5rem;border-radius:1.5rem;border:2px solid #fff;color:#fff !important;background-color:var(--primary);font-weight:400 !important;box-shadow:1px 1px 3px rgba(71,71,71,.363)}.btn-contact:hover{color:#c7e4b3 !important}ul{li:not(:last-child) { margin-bottom:1rem; }}em{font-style:normal}h1,h2{em { color: var(--primary); }}li{em { font-weight: 450; }}.footer-partners{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:2.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.15)}.dark-background{background-color:rgba(5,33,59,.842);padding:2em 0}.footer-partner-logo{height:1.75rem;width:auto;filter:brightness(0)invert(1);opacity:.7;transition:opacity .2s ease;&:hover { opacity:1; }}.footer-bottom-row{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end;margin-top:2rem;flex-wrap:wrap;gap:.5rem}.copyright{font-size:1.3rem}.footer-credential{font-size:1.1rem;opacity:.75;text-align:right}footer{display:flex;flex-direction:column;align-items:center;padding:1em;font-size:20px;color:#fff;background-color:var(--primary);border-top:.5rem solid #ffe7ba;a { color: rgb(248, 248, 248); font-weight: 400; } a:hover { color: rgb(196, 228, 155); } a.active { color: white; border-bottom: 1px solid white; } h3 { color: white !important; } .dropdown-menu-vertical { background-color: var(--primary); border: 1px solid white; border-radius: 1em; }}.dark-section{a { color: white; }}.footer-content{width:var(--content-width)}.footer-company-name{margin-bottom:3rem;margin-top:2rem;color:var(--secondary)}.footer-rows{display:flex;flex-direction:row;justify-content:space-between;@media(max-width:1024px){flex-direction: column;}.footer-navigation { display: flex; flex-direction: column; ul { list-style: none; padding-left: 0; li { margin-bottom: 0.1em; } } }}.dropdown-menu-vertical{padding:1ch 2ch;list-style:none}.marquee-container{display:flex;flex-direction:row;overflow:hidden;width:100%;background-color:rgba(65,60,60,.151);position:relative;height:15vh;align-items:center;padding:4rem 0;.marquee-interior { position: absolute; display: flex; flex-direction: row; width: fit-content; animation: marquee-scroll 30s linear infinite; transition: 3s; }}@keyframes marquee-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.marquee-interior:hover{animation-play-state:paused}.customer-logos{display:flex;flex-direction:row;>* { margin: 1rem; border-radius: 1.5rem; background-color: white; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1rem; flex: 1; width: 15rem; img { width: 100%; height: auto; } }}.cta-blurb{display:flex;flex-direction:column;gap:4rem !important;padding:2.5rem 0;>div { display: flex; flex-direction: column; align-items: flex-start; }}.full-colour-background{background-color:var(--secondary);padding:2rem;border-radius:2rem}.vertical-timeline{position:relative;width:100%;max-width:56rem;margin-left:auto;margin-right:auto;display:flex;flex-direction:column;padding:1rem 0}.vertical-timeline::before{content:'';position:absolute;left:calc(50% - 1.5px);top:0;bottom:0;width:3px;background:linear-gradient(to bottom,var(--primary),rgba(202,19,0,.25));transform:scaleY(0);transform-origin:top center}.vertical-timeline.animate::before{animation:timelineLineGrow 2.5s ease-out forwards}.timeline-chapter-break{display:flex;align-items:center;gap:2rem;padding:3rem 0;position:relative;z-index:2}.timeline-chapter-rule{flex:1;height:2px;background:linear-gradient(to right,transparent,var(--primary));opacity:.3;flex-shrink:0;min-width:2rem}.timeline-chapter-rule:last-child{background:linear-gradient(to left,transparent,var(--primary))}.timeline-chapter-content{flex-shrink:0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.75rem 2.5rem;border:2px solid var(--primary);border-radius:.5rem;max-width:28rem;background:#fffcfc;position:relative;z-index:2}.timeline-chapter-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}.timeline-chapter-content h2{font-size:1.75rem;font-weight:350;margin:0}.timeline-chapter-content p{font-size:.95rem;opacity:.75;margin:0;line-height:1.5}@keyframes timelineLineGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}.timeline-item{display:grid;grid-template-columns:1fr 5rem 1fr;align-items:start;padding:1.75rem 0}.timeline-axis{grid-column:2;grid-row:1;position:relative;display:flex;justify-content:center;padding-top:1.4rem;z-index:1}.timeline-item:nth-child(odd of .timeline-item) .timeline-card{grid-column:1;grid-row:1;padding-right:2.5rem;text-align:right;opacity:0;transform:translateX(-4rem)}.timeline-item:nth-child(even of .timeline-item) .timeline-card{grid-column:3;grid-row:1;padding-left:2.5rem;text-align:left;opacity:0;transform:translateX(4rem)}.timeline-item.animate:nth-child(odd of .timeline-item) .timeline-card{animation:timelineSlideLeft .9s cubic-bezier(.2,.8,.3,1).1s forwards}.timeline-item.animate:nth-child(even of .timeline-item) .timeline-card{animation:timelineSlideRight .9s cubic-bezier(.2,.8,.3,1).1s forwards}@keyframes timelineSlideLeft{from{opacity:0;transform:translateX(-4rem)}to{opacity:1;transform:translateX(0)}}@keyframes timelineSlideRight{from{opacity:0;transform:translateX(4rem)}to{opacity:1;transform:translateX(0)}}.timeline-dot{width:1.1rem;height:1.1rem;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px #fff8f8,0 0 0 7px var(--primary);flex-shrink:0;transform:scale(0)}.timeline-item.animate .timeline-dot{animation:timelineDotPop .4s cubic-bezier(.34,1.56,.64,1).05s forwards}@keyframes timelineDotPop{from{transform:scale(0)}to{transform:scale(1)}}.timeline-axis::before,.timeline-axis::after{content:'';position:absolute;top:calc(1.4rem + .42rem);height:2px;background:var(--primary);opacity:.3}.timeline-item:nth-child(odd of .timeline-item) .timeline-axis::before{right:50%;left:0}.timeline-item:nth-child(odd of .timeline-item) .timeline-axis::after{display:none}.timeline-item:nth-child(even of .timeline-item) .timeline-axis::after{left:50%;right:0}.timeline-item:nth-child(even of .timeline-item) .timeline-axis::before{display:none}.timeline-card{.timeline-year { display: block; font-size: 2.25rem; font-weight: 700; color: var(--primary); line-height: 1; margin-bottom: 0.3rem; opacity: 0.85; } h3, h4 { margin: 0 0 0.4rem; font-size: 1.1rem; font-weight: 500; color: var(--secondary); } p { margin: 0; font-size: 0.9rem; line-height: 1.65; color: #555; }}.dark-section .timeline-dot{box-shadow:0 0 0 4px var(--secondary),0 0 0 7px var(--primary-light)}.dark-section .vertical-timeline .timeline-card{.timeline-year { color: var(--primary-light); } h3, h4 { color: white; } p { color: rgba(255, 255, 255, 0.75); }}.dark-section .timeline-axis::before,.dark-section .timeline-axis::after{opacity:.5}@media(max-width:1024px){.vertical-timeline::before{left:1.6rem}.timeline-item{grid-template-columns:3.5rem 1fr}.timeline-axis{grid-column:1;grid-row:1;justify-content:center;padding-top:.2rem}.timeline-item:nth-child(odd of .timeline-item) .timeline-card,.timeline-item:nth-child(even of .timeline-item) .timeline-card{grid-column:2;grid-row:1;text-align:left;padding-left:1.5rem;padding-right:0;opacity:0;transform:translateX(4rem)}.timeline-item.animate:nth-child(odd of .timeline-item) .timeline-card,.timeline-item.animate:nth-child(even of .timeline-item) .timeline-card{animation:timelineSlideRight .9s cubic-bezier(.2,.8,.3,1).1s forwards}.timeline-axis::before,.timeline-axis::after{display:none !important}.timeline-chapter-rule{display:none}.timeline-chapter-break{padding:2rem 0;gap:0}.timeline-chapter-content{flex-shrink:1;min-width:0;max-width:none;width:100%;padding:1.25rem 1.5rem}}.page-header{display:flex;align-items:center;justify-content:center;padding:calc(var(--site-header-height) + 2rem)0 6vh;min-height:94vh;width:100%}h1{font-weight:400;font-size:3.8em}.hero-eyebrow{font-size:1.7em;font-weight:350}.page-header-content{display:grid;grid-template-columns:3fr 2fr;grid-template-rows:auto auto auto auto;column-gap:1rem;row-gap:2rem;width:var(--content-width);grid-template-areas:"header-breadcrumb header-breadcrumb" "header-text header-figure" "header-subtext header-figure" "header-cta header-figure";@media(max-width:1750px){grid-template-columns: 3fr 1fr;}@media(max-width:1500px){grid-template-columns: 4fr 1fr;}@media(max-width:1024px){grid-template-columns: 1fr; padding-top: 2vh; grid-template-areas: "header-breadcrumb" "header-text" "header-figure" "header-subtext" "header-cta";}&.has-figure { @media (max-width: 1750px) { grid-template-columns: 3fr 2fr; } @media (max-width: 1500px) { grid-template-columns: 2fr 2fr; } @media (max-width: 1200px) { grid-template-columns: 1fr; padding-top: 10vh; grid-template-areas: "header-breadcrumb" "header-text" "header-figure" "header-subtext" "header-cta"; } } .breadcrumb { grid-area: header-breadcrumb; margin-bottom: -0.5rem; ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 0.25rem; } li { display: flex; align-items: center; font-size: 1rem; font-weight: 500; color: #555; &:first-child::before { content: "←"; margin-right: 0.4rem; font-weight: 400; color: #888; } &:not(:last-child)::after { content: "/"; margin-left: 0.25rem; color: #bbb; } } a { color: inherit; text-decoration: none; &:hover { color: var(--primary); } } } .header-text { grid-area: header-text; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; @media (max-width: 1024px) { font-size: 0.8em; } } .product-page-link { font-size: 1.05rem; color: #666; text-decoration: none; margin-top: 0.1rem; letter-spacing: 0.01em; &:hover { color: var(--primary); } } .hero-subtext { grid-area: header-subtext; font-size: 1.2em; @media (max-width: 1024px) { width: 100%; } } .cta-row { grid-area: header-cta; display: flex; flex-direction: row; align-items: flex-start; } .header-figure { grid-area: header-figure; display: flex; align-items: center; justify-content: center; img, video { width: 100%; height: 100%; object-fit: cover; border-radius: 1rem; } }}.page-section{padding:15vh 0;display:flex;flex-direction:column;align-items:center;background-repeat:no-repeat;background-size:cover;overflow-x:hidden;width:100%}.person-grid{display:flex;flex-wrap:wrap;justify-content:center;width:100%;gap:2rem}.person-card{aspect-ratio:7/8;perspective:1000px;cursor:pointer;width:27%;@media(max-width:1500px){width: 45%;}@media(max-width:1024px){width: 100%;}}.person-card-inner{position:relative;width:100%;height:100%;transition:transform .55s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}.person-card:hover .person-card-inner,.person-card:focus-within .person-card-inner{transform:rotateY(180deg)}.person-card-front,.person-card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:2rem;overflow:hidden;border-style:solid;border-color:#fff}.person-card-front{display:flex;flex-direction:column;background-color:rgba(255,255,255,.11);border-width:0 0 .5rem}.person-card-photo-wrap{flex:1;min-height:0;overflow:hidden}.person-card-photo{width:100%;height:100%;object-fit:cover;object-position:top;display:block}.person-card-label{flex-shrink:0;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.2rem;text-align:left;color:#fff;border-top:1px solid rgba(255,255,255,.15)}.person-card-name{font-weight:600;font-size:.95em;line-height:1.2}.person-card-role{font-size:.8em;opacity:.75;font-style:italic}.person-card-back{transform:rotateY(180deg);background-color:rgba(255,255,255,.11);border-width:.4rem 0 .5rem;border-top-color:var(--primary-light);color:#fff;display:flex;flex-direction:column;padding:1.25rem 1rem;gap:.75rem}.person-card-back-header{flex-shrink:0;display:flex;flex-direction:column;gap:.2rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.2);text-align:left}.person-card-back-blurb{flex:1;font-size:.85em;line-height:1.55;opacity:.9;text-align:left;display:flex;flex-direction:column;gap:1em;p { margin: 0; }}@media(prefers-reduced-motion:reduce){.person-card-inner{transition:none}.person-card:hover .person-card-inner,.person-card:focus-within .person-card-inner{transform:none}.person-card-back{transform:none;opacity:0;transition:opacity .2s}.person-card:hover .person-card-back,.person-card:focus-within .person-card-back{opacity:1}.person-card:hover .person-card-front,.person-card:focus-within .person-card-front{opacity:0}}@media(max-width:1024px){.person-grid{gap:1.5rem}}.page-header:has(.portfolio-slideshow-wrapper){padding-top:var(--site-header-height);padding-bottom:2rem}.page-header .header-figure{margin-top:-4rem;margin-bottom:-4rem;@media(max-width:1200px){margin: 0; margin-left: calc(0px - var(--content-padding)); margin-right: calc(0px - var(--content-padding)); margin-bottom: 4rem;}}.page-header:has(.portfolio-slideshow-wrapper) .header-figure .portfolio-slideshow-wrapper{@media(max-width:1200px){height: auto;}}.page-header:has(.portfolio-slideshow-wrapper) .header-figure .portfolio-slideshow{@media(max-width:1200px){flex: none; width: 100%; aspect-ratio: 1 / 1; min-height: unset; max-height: unset; height: auto; overflow: visible;}}.page-header:has(.portfolio-slideshow-wrapper) .header-figure .slideshow-slide{@media(max-width:1200px){display: flex; flex-direction: column; overflow: visible;}}.page-header:has(.portfolio-slideshow-wrapper) .header-figure .slideshow-slide img{@media(max-width:1200px){position: static; aspect-ratio: 1 / 1; height: auto; flex-shrink: 0;}}.page-header:has(.portfolio-slideshow-wrapper) .page-header-content.has-figure{@media(max-width:1200px){grid-template-areas: "header-breadcrumb" "header-text" "header-figure" "header-subtext" "header-cta";}}.mobile-slideshow-section{display:none}.portfolio-slideshow-wrapper{position:relative;display:flex;flex-direction:column;width:100%;height:100%;gap:.75rem}.portfolio-slideshow{position:relative;width:100%;flex:1;min-height:200px;border-radius:1rem;overflow:hidden;background:0 0;@media(max-width:1200px){min-height: 55vw; max-height: 70vw;}}.slideshow-slides{position:relative;width:100%;height:100%;overflow:visible}.slideshow-slide{position:absolute;inset:0;display:block;text-decoration:none;opacity:0;transition:opacity .7s ease;pointer-events:none;overflow:visible}.slideshow-slide.active{opacity:1;pointer-events:auto}.slideshow-slide.border-bottom{border-bottom:1px solid #e0e0e0}.portfolio-slideshow .slideshow-slide img{width:100%;height:100%;object-fit:contain;display:block;position:absolute;border-radius:0;@media(max-width:1200px){object-fit: contain;}}.slideshow-nav{position:absolute;top:1rem;right:.1rem;display:flex;flex-direction:column;bottom:1rem;gap:.5rem;z-index:3;justify-content:center}.slideshow-dot{width:1rem;height:1rem;border-radius:50%;background:rgba(255,255,255,.4);border:1px solid #b6b6b6;padding:0;cursor:pointer;transition:background .3s ease,transform .3s ease;box-shadow:0 1px 3px rgba(0,0,0,.4)}.slideshow-dot:hover{background:rgba(255,255,255,.75)}.slideshow-dot.active{background:rgba(0,0,0,.432)}.slideshow-captions{position:absolute;min-height:3.5em;width:100%;bottom:4rem;right:2rem;@media(max-width:1200px){margin-bottom: -4rem; bottom: 0; right: 0;}}.slideshow-caption{display:flex;flex-direction:column;gap:.15rem;transition:opacity .7s ease;pointer-events:none;padding:.5rem;text-align:right;@media(max-width:1200px){text-align: center;}}.slideshow-brand{font-size:.75em;letter-spacing:.1em;text-transform:uppercase;color:#888;font-weight:500}.slideshow-name{font-size:1.1em;font-weight:500;color:var(--secondary);line-height:1.2}.slideshow-industries{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.3rem}.slideshow-industry{font-size:.65em;padding:.2em .65em;border-radius:2em;border:1px solid #ccc;color:#666;letter-spacing:.04em}.problem-list{display:flex;flex-direction:row;gap:3vw;@media(max-width:1024px){flex-direction: column; gap: 10vh;}>div { font-size: 1rem; border-color: var(--primary); border-width: 0 1px 0.5rem 0; border-radius: 2rem; border-style: solid; display: flex; flex-direction: column; text-align: left; padding: 2rem; gap: 2rem; @media (max-width: 1024px) { padding: 1rem; border-width: 0 0 0.5rem 0; } .problem-setup { display: flex; flex-direction: column; gap: 1rem; flex: 0.5; --point-depth: 10%; --point-base: calc(100% - var(--point-depth)); flex: 1; } .problem-solution { h4 { color: var(--primary); } flex: 0.5; display: flex; flex-direction: column; justify-content: center; flex: 1; } }}a.product-card-link{display:block;text-decoration:none;color:inherit;height:100%}a.product-card-link .product-card{height:100%}.product-card:hover{box-shadow:0 0 0 3px var(--primary),0 8px 28px rgba(202,19,0,.2);cursor:pointer}.dark-product-card{color:#fff !important;.product-card-content { border-color: white !important; }}.product-card{display:flex;flex-direction:column;background-repeat:no-repeat;background-position:centers;background-size:cover;background-color:#fffcfc;color:#000;border-color:var(--primary);border-style:solid;border-width:0 0 .6rem;transition:.5s;overflow:hidden;@media(max-width:750px){padding: 0; border-width: 0 0 0.6rem 0;}.product-category-tag { position: absolute; top: 1.5rem; left: 1rem; background-color: var(--primary); color: white; border-radius: 2rem; padding: 0.5rem 1rem; z-index: 10; } .product-card-image { height: 42vh; position: relative; overflow: hidden; img { object-fit: contain; width: 100%; height: 100%; } .product-card-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 0.4s ease; } } &:hover .product-card-video { opacity: 1; } .product-card-content { border-width: 1px 0 0 0; border-style: solid; border-color: var(--border-color); padding: 3rem 2rem; flex: 1; ul { li { color: var(--secondary); margin-bottom: 0.1rem; } } @media (max-width: 1024px) { padding: 2rem 1rem; } }}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);column-gap:.2em;padding:.2em;background-color:rgba(255,255,255,.233);padding:2rem 0;border:.5rem solid #8a8a8a;border-width:1px 0;margin-top:5rem;margin-bottom:5rem;@media(max-width:1024px){grid-template-columns: repeat(1,1fr);}}.scroll-image-frame{position:sticky;top:0;display:flex;align-items:center;justify-content:center;height:100vh}.scroll-image{max-width:100%;max-height:100%;object-fit:contain}.section-content{flex:1;width:100%;display:grid;row-gap:2em;column-gap:0;grid-template-rows:min-content 1fr min-content;grid-template-columns:1fr 1fr;grid-template-areas:"section-header section-figure" "section-blurb section-figure" "section-cta section-figure";.section-figure { padding-right: calc(var(--content-padding) / 4); padding-left: 2.5%; } .section-header, .section-blurb, .section-cta { padding-left: var(--content-padding); padding-right: 2.5%; } @media (max-width: 1200px) { row-gap: 1rem; grid-template-columns: 1fr; grid-template-areas: "section-header" "section-figure" "section-blurb" "section-cta"; .section-figure { padding-right: calc(var(--content-padding) / 2); padding-left: calc(var(--content-padding) / 2); } .section-header, .section-blurb, .section-cta { padding-left: var(--content-padding); padding-right: var(--content-padding); } }}:not(.pointed-section)>.section-content>.section-figure{padding-top:5rem;@media(max-width:1024px){padding-top: 0;}}.section-content.right{grid-template-columns:1fr 1fr;grid-template-areas:"section-figure section-header" "section-figure section-blurb" "section-figure section-cta";.section-figure { padding-right: 2.5%; padding-left: calc(var(--content-padding) / 4); } .section-blurb, .section-header, .section-cta { padding-left: 2.5%; padding-right: var(--content-padding); } @media (max-width: 1024px) { grid-template-columns: 1fr; grid-template-areas: "section-header" "section-figure" "section-blurb" "section-cta"; .section-figure { padding-right: calc(var(--content-padding) / 2); padding-left: calc(var(--content-padding) / 2); } .section-blurb, .section-header, .section-cta { padding-left: var(--content-padding); padding-right: var(--content-padding); } }}.section-header{grid-area:section-header;display:flex;flex-direction:column;gap:1rem;.hero-eyebrow { font-size: 1.2rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; } @media (max-width: 1024px) { padding-bottom: 1rem; } h2 { font-size: 3.5rem; font-weight: 350; @media (max-width: 1600px) { font-size: 3.5rem; } @media (max-width: 1376px) { font-size: 3rem; } @media (max-width: 1024px) { font-size: 2.5rem; } }}.section-figure{grid-area:section-figure}.section-cta{grid-area:section-cta;font-family:Roboto,arial;padding-top:1rem;display:flex;flex-direction:column;align-items:flex-start}.section-blurb{grid-area:section-blurb;display:flex;flex-direction:column;align-items:flex-start;flex:.9;gap:1em;@media(max-width:1025px){padding-right: 0; padding-left: 0;}}.centered-section .section-blurb>p{max-width:60ch}.pull-quote{font-size:1.55rem;font-weight:300;line-height:1.5;max-width:680px;padding:2.5rem 1rem;border-top:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15);margin:1rem auto;@media(max-width:1024px){font-size: 1.25rem;}}.dark-section .pull-quote{border-color:rgba(255,255,255,.25)}.centered-section{display:flex;flex-direction:column;align-items:center;padding-top:7vh;padding-bottom:5vh;width:calc( var(--content-width));text-align:center;.section-blurb { padding: 4vh 0; align-items: center; width: 100%; @media (max-width: 1024px) { padding: 2vh 0; } } @media (max-width: 1024px) { gap: 3vh; }}.tech-tags{display:flex;flex-direction:column;gap:1.5rem;padding:1rem 0}.tech-tag-group{display:flex;flex-direction:column;gap:.5rem}.tech-tag-group-label{font-size:.7em;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--tertiary);text-align:left}.tech-tag-list{display:flex;flex-wrap:wrap;gap:.4rem}.tech-tag{display:inline-block;padding:.25em .9em;border-radius:2rem;border:1px solid var(--border-color);font-size:.8em;font-weight:400;color:var(--secondary);background:#fff;line-height:1.8}.dark-section .tech-tag-group-label{color:rgba(255,255,255,.55)}.dark-section .tech-tag{background:rgba(255,255,255,8%);border-color:rgba(255,255,255,.2);color:#fff}.testimonial-gallery{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;grid-template-areas:"prev quote next" "prev signature next";gap:2rem;align-items:center;font-size:2rem;@media(max-width:1500px){font-size: 1.8rem;}@media(max-width:1024px){font-size: 1.2rem;}}.testimonial-gallery-content{grid-column:2;grid-row:1/span 2;display:grid;grid-template-rows:auto auto;gap:0;position:relative;min-height:150px}.testimonial-gallery-item{opacity:0;pointer-events:none;display:grid;grid-template-rows:subgrid;grid-column:1;grid-row:1/span 2;transition:opacity .5s ease-in-out}.testimonial-gallery-quote{font-size:1em;padding:2rem 0;margin:0;grid-row:1;border-bottom:1px solid #fff;display:flex;flex-direction:column;justify-content:flex-end}.testimonial-gallery-signature{font-size:1.5em;color:#9e9494;margin:0;padding:1rem 2rem;grid-row:2}.testimonial-gallery-item.active{opacity:1;pointer-events:auto}.testimonial-nav{background-color:transparent;color:#fff;border:none;width:60px;min-height:80px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .3s ease,transform .2s ease}.testimonial-nav-prev{grid-area:prev}.testimonial-nav-next{grid-area:next}.testimonial-nav:hover{background:var(--secondary);transform:scale(1.05)}.testimonial-nav:active{transform:scale(.95)}.testimonial-nav svg{display:block}@media(max-width:1024px){.testimonial-gallery{grid-template-columns:1fr;grid-template-rows:auto auto auto;grid-template-areas:"quote" "signature" "navigation";row-gap:.5em}.testimonial-gallery-content{grid-column:1;grid-row:1/span 2}.testimonial-nav{grid-row:3;height:60px;min-height:60px}.testimonial-nav-prev{grid-area:navigation;justify-self:start}.testimonial-nav-next{grid-area:navigation;justify-self:end}.testimonial-nav svg{width:20px;height:20px}}.testimonial-quote{border:1px solid var(--border-color);padding:1rem;border-radius:1rem}.testimonial{display:flex;flex-direction:column;align-items:flex-end}.testimonial-signature{text-align:right;font-weight:400;font-size:1.2em;padding-right:1em}