/******* Component: author-date *******/
.author-date{color:var(--color-text-inactive);display:flex;flex-wrap:wrap;font-size:var(--font-xs);margin-top:var(--space-s);&:before{content:"By ";margin-right:.25em}.author:after{content:" | ";margin:0 var(--space-2xs)}&.is-vertical{.author,time{display:block}time{flex:0 0 100%}.author:after{content:"";margin:0}}}

/******* Component: blog-pagination *******/
.blogs-pagination{display:flex;gap:.625rem;justify-content:center;margin:2rem auto;padding:0;li{align-items:center;border:1px solid #f0f0f0;display:flex;height:2rem;justify-content:center;padding:0 .625rem;width:2rem;a{border:none}&:hover{background-color:var(--color-background-light);cursor:pointer}&.active{background-color:var(--color-pagination-active);cursor:default;pointer-events:none;span{color:var(--color-text-light)}}&.disabled{cursor:not-allowed;opacity:.5;pointer-events:none}}}

/******* Component: branding *******/
.brand{align-items:center;display:flex;flex:0 0 auto;padding:var(--space-2xs) 0}.brand .home-link img{height:auto;transform:scale(1);transition:transform .25s ease;width:var(--space-l-xl)}.brand .home-link:hover img{transform:scale(1.05)}

/******* Component: breadcrumbs *******/
.breadcrumbs{display:flex;font-family:var(--font-primary);gap:var(--space-s);left:50%;list-style:none;margin:0 auto var(--space-s-l);max-width:var(--wrapper-max-width,85rem);padding-left:var(--gutter);position:absolute;top:var(--space-2xl-3xl);transform:translateX(-50%);width:100%;z-index:1;li{font-size:var(--font-xs);text-transform:uppercase;transition:color var(--transition-fast);&:after{content:"›";margin-left:var(--space-s)}&:after,a{color:var(--color-primary)}a{border-bottom:1px solid transparent;text-decoration:none;transition:border-color var(--transition-fade)}&:last-child{color:var(--color-text-inactive);font-weight:600;&:after{display:none}}a:hover{border-bottom-color:var(--color-primary);text-decoration:none}}}.is-dark .breadcrumbs{a,li:after{color:var(--color-text-highlight-light)}a{border-bottom-color:var(--color-text-highlight-light)}}

/******* Component: card *******/
.simple-card{background-color:var(--glass-background);border:1px solid var(--color-border-light);border-radius:var(--space-2xs-xs);box-shadow:var(--glass-box-shadow);color:var(--color-text);max-width:30rem;overflow:hidden;position:relative;transition:all .3s ease-in-out;&:hover{cursor:pointer;transform:scale(1.05)}a{border:none;color:inherit;display:flex;flex-direction:column;height:100%;text-decoration:none;&:after{background:none;display:none}}.image-wrapper{bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0;z-index:-1;img{height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%}}.text-wrapper{background-color:var(--glass-background-light);flex-grow:1;margin-block-start:10rem;padding:var(--space-s-m) var(--space-s-m)}.title{color:var(--color-text);font-size:var(--font-h5);text-transform:uppercase}.prose{font-size:var(--font-p);margin-block:var(--space-s-m) 0}}

/******* Component: ctas *******/
.ctas{--flow-space:var(--space-m-l)}.cta{font-size:var(--font-s);text-decoration:none;text-transform:uppercase;&+.cta{margin-left:var(--space-m-l)}}.cta.button{backdrop-filter:var(--glass-backdrop-filter);background:rgba(218,30,40,.8);border:1px solid hsla(0,0%,100%,.4);border-radius:.5rem;box-shadow:var(--glass-box-shadow);color:var(--color-text-light);display:inline-block;font-weight:500;isolation:isolate;letter-spacing:var(--default-letter-spacing);padding:var(--space-2xs-xs) var(--space-s-m);text-align:center;transition:all .3s ease-in-out;&:hover{transform:scale(1.05)}&.small{font-size:var(--font-xs);padding:.5rem 1.5rem}&:focus{box-shadow:var(--glass-box-shadow),0 0 0 4px hsla(0,0%,100%,.3);outline:2px solid var(--color-text-light);outline-offset:2px}}.cta.link{border-bottom:1px solid transparent;display:inline-block;font-size:var(--font-s);transition:all .3s ease-in-out;&:hover{transform:translateY(-1px)}&:focus,&:hover{border-bottom-color:currentColor}&:focus{outline:2px solid var(--color-primary);outline-offset:2px}}@media (prefers-reduced-motion:reduce){.cta.button,.cta.link{transition:none}.cta.button:hover,.cta.link:hover{transform:none}}

/******* Component: text *******/
.prose{&>*+*{margin-top:var(--flow-space,1em)}ol,ul{list-style:revert;margin-top:var(--space-xs-s);padding-left:1.5em}ul{list-style-type:disc}ol{list-style-type:decimal}li{margin-bottom:var(--space-2xs)}blockquote{border-left:4px solid var(--color-primary);color:var(--color-text-inactive);font-style:italic;margin-left:0;padding-left:var(--space-s)}code{background-color:var(--color-background-light);border-radius:.25rem;font-family:Courier New,monospace;font-size:.9em;padding:.2em .4em}pre{background-color:var(--color-dark-background);border-radius:.5rem;overflow-x:auto;padding:var(--space-s);code{background:none;color:var(--color-text-light);padding:0}}table{border-collapse:collapse;margin-top:var(--space-s);width:100%}td,th{border:1px solid var(--color-border-light);padding:var(--space-2xs) var(--space-xs);text-align:left}th{background-color:var(--color-background-light);font-weight:500}hr{background-color:var(--color-border-light);border:none;height:1px;margin:var(--space-m) 0}img{border-radius:.25rem;height:auto;max-width:100%}strong{font-weight:600}em{font-style:italic}}.is-dark .prose{blockquote{border-left-color:var(--color-primary-light,var(--color-primary))}blockquote,code{color:var(--color-text-light)}code,th{background-color:hsla(0,0%,100%,.1)}td,th{border-color:hsla(0,0%,100%,.2)}hr{background-color:hsla(0,0%,100%,.2)}}

/******* Component: image *******/
.image{overflow:hidden;position:relative;img{height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%}.caption{bottom:0;color:#ccc;font-size:var(--font-xs);left:0;padding:var(--space-xs);position:absolute;width:100%;z-index:1}}

/******* Component: commons *******/
.section-wrapper{margin-block-end:var(--section-space,var(--space-l-2xl));margin-block-start:var(--section-space,var(--space-l-2xl));padding:var(--section-padding,var(--space-s-l));position:relative;&.no-top-margin,&:first-child{margin-block-start:0}&.no-bottom-margin{margin-block-end:0}&.in-container{margin-inline:auto;max-width:var(--wrapper-max-width,85rem)}&.is-dark{color:var(--color-text-light)}&.first-section{margin-top:calc((var(--space-2xl-3xl))*-1);padding-top:var(--space-3xl-4xl)}&.merge-with-next{margin-bottom:calc(var(--space-xl-2xl)*-1);.text{margin-bottom:var(--space-xl-2xl)}}&.full-screen{display:flex;flex-direction:column;justify-content:flex-end;margin-bottom:var(--space-2xl-3xl);margin-top:calc((var(--space-2xl-3xl))*-1);min-height:100vh;position:relative;.container{display:flex;flex-direction:column;justify-content:flex-end;position:static}}&.no-top-padding{padding-block-start:0}&.no-bottom-padding{padding-block-end:0}.background-image{background-position:bottom;background-repeat:no-repeat;background-size:cover;height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}&.has-dark-screen .background-image:before{background:var(--dark-screen);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-2}&.has-light-screen .background-image:before{background:var(--light-screen);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-2}.content{--threshold:60rem;align-items:center;-moz-column-gap:var(--content-gap,2rem);column-gap:var(--content-gap,2rem);display:flex;flex-wrap:wrap;row-gap:0;>*{align-self:stretch;flex-basis:calc((var(--threshold) - 100%)*999);flex-grow:1}&.is-reverse{flex-direction:row-reverse}.prose{max-width:80ch}}&.no-top-padding .text{padding-block-start:var(--section-padding,var(--space-s-l))}&.no-bottom-padding .text{padding-block-end:var(--section-padding,var(--space-s-l))}}.align-center{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.skip-link{background:var(--color-primary,#007acc);border-radius:4px;color:#fff;left:6px;padding:8px;position:absolute;text-decoration:none;top:-40px;z-index:1000}

/******* Component: flip-card *******/
.flip-card,.flip-card-back{backface-visibility:hidden;background-color:var(--color-background);border:1px solid var(--color-border-light);color:var(--color-text);height:100%;padding:var(--space-s-l);position:absolute;transform-style:preserve-3d;transition:transform .8s;.lead-in{font-size:.75rem}h3{font-size:1.5rem}.prose{font-size:1rem}.flip-icon{display:block;height:2rem;position:absolute;right:1rem;top:1rem;width:2rem;svg{height:100%;width:100%;stroke:var(--color-text-light)}}.icon{align-items:center;border-radius:5px;display:flex;height:40px;justify-content:center;width:40px}svg{height:4rem;width:4rem;stroke:var(--color-border);g,path{fill:#fff}}}.flip-card-back{background-color:var(--color-dark-background);display:flex;flex-direction:column;justify-content:space-between;transform:rotateY(180deg);h1,h2,h3,h4,p{color:var(--color-text-light)}}.flip-card-wrapper.flip .flip-card{transform:rotateY(180deg)}.flip-card-wrapper.flip .flip-card-back{transform:rotateY(0deg)}

/******* Component: logo *******/
.logos-wrapper{--logo-padding:20px;--list-height:160px;--start-position:0%;--end-position:-50%}@keyframes marquee{0%{transform:translate3d(var(--start-position,0),0,0)}to{transform:translate3d(var(--end-position,-50%),0,0)}}.marquee{margin:0 auto;max-width:100%;overflow:hidden;width:var(--list-width)}.logos-wrapper{animation:marquee 15s linear infinite;animation-play-state:paused;display:flex;position:relative;transform:translate3d(var(--start-position,0),0,0);width:-moz-fit-content;width:fit-content;&.play{animation-play-state:running}}.hint{font-size:1.2rem;font-style:italic}.marquee:hover .logos-wrapper{animation-play-state:paused;transition-duration:.8s}.logos{display:flex;width:var(--list-width);li{padding:0 var(--logo-padding);&:before{border:none}}a{border:none;display:flex;flex-direction:column;height:100%;justify-content:center;&:hover{text-decoration:none}}img{filter:grayscale(100%);opacity:.5;transition:all .3s ease-in-out;&:hover{filter:grayscale(0);opacity:1}}}

/******* Component: navigation *******/
.hamburger-menu{background:none;border:none;cursor:pointer;display:none;position:relative;z-index:1000}.hamburger-menu span{background-color:var(--color-primary);border-radius:2px;display:block;height:3px;margin:5px 0;transition:all var(--transition-base);width:25px}.hamburger-menu span:first-child{margin-top:0}.hamburger-menu span:last-child{margin-bottom:0}.hamburger-menu.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.hamburger-menu.active span:nth-child(2){opacity:0}.hamburger-menu.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.main-menu{display:flex;gap:var(--space-s);justify-content:flex-end;list-style:none;margin:0;padding:0}.main-menu a{padding-block-start:var(--space-xs)}@media (max-width:767px){.hamburger-menu{display:block}.main-menu{align-items:center;background-color:var(--color-background);box-shadow:0 5px 10px var(--color-shadow);display:flex;flex-direction:column;left:0;opacity:0;position:absolute;right:0;top:105%;transform:translateY(-5rem);transition:opacity .3s ease,transform .3s ease,visibility 0s .3s;visibility:hidden;z-index:50}.main-menu.active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease;visibility:visible}.main-menu li{border-bottom:1px solid var(--color-border-light);text-align:center;width:100%}.main-menu li:last-child{border-bottom:none}.main-menu a:hover{transform:none}}.blog .blog,.home .home,.other-page .other-page{color:var(--color-secondary)!important;cursor:default;font-weight:700;pointer-events:none}

/******* Component: slider-pagination *******/
.slider-pagination{bottom:-3rem;display:flex;gap:.5rem;justify-content:center;left:50%;margin:0;padding:0;position:absolute;transform:translateX(-50%);z-index:1000;button{align-items:center;background:var(--color-border-light);border:none;border-radius:50%;color:var(--color-text);cursor:pointer;display:flex;font-size:.8rem;height:1.5rem;justify-content:center;transition:all .3s ease-in-out;width:1.5rem;&:hover{background:var(--color-primary-light,var(--color-primary));transform:scale(1.1)}&.active{background:var(--color-primary);color:#fff;cursor:default}}&.is-tabs{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:var(--space-m);position:static;transform:none;button{border-radius:.5rem;padding-inline:2rem;width:auto}}}

/******* Component: social-link *******/
.social-links{color:var(--color-text-light);display:flex;font-size:1.5rem;gap:1rem;justify-content:center;list-style:none;margin:0;padding:0;li{align-items:center;display:flex;justify-content:center;padding:.5rem;transition:all .3s ease-in-out;&:hover{transform:scale(1.1)}a{border:none}svg{stroke:#000;stroke-width:1px;fill:none;height:3dvh;transition:all .3s ease-in-out;width:3rem;*{fill:none;stroke:#000;stroke-width:1px}}a:hover svg{stroke:var(--color-primary);*{stroke:var(--color-primary)}}}}

/******* Component: banner *******/
.section-wrapper .banner.content{--threshold:60rem}.cta-banner{.content{margin:0 auto;max-width:60rem;text-align:center}}.accordion-header{cursor:pointer;h2:after,h3:after{content:"+"}&.is-open{h2:after,h3:after{content:"-"}}}.accordion-content{max-height:1000px;overflow:hidden;transition:all .3s ease-in-out;&.is-closed{max-height:0;padding-block:0}}

/******* Component: blog-list *******/
.blog-list{display:grid;grid-gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));list-style:none;margin:0;padding:0}

/******* Component: composed *******/
.text-image-cta{.text{flex-grow:2}.ctas,.image{flex-grow:1}.ctas{align-items:center;display:flex;flex-direction:column;justify-content:center;padding-block:var(--space-xl-2xl)}}.hero-cta .content{background-color:var(--color-text-highlight-light);border-radius:var(--space-2xs-xs);box-shadow:0 2px 4px var(--color-shadow);container-type:inline-size;opacity:1;overflow:hidden;.column.image{flex-grow:1}.column.text{display:flex;flex-direction:column;flex-grow:2;justify-content:center;padding:var(--space-s-l)}.column.ctas{flex-grow:1;padding-block:var(--space-xl-2xl)}}@container (max-width: 60rem){.hero-cta .content .column.image{display:none}}

/******* Component: flip-cards *******/
.flip-cards{--threshold:20rem;.flip-cards-list{align-items:stretch;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;list-style:none;margin:0;padding:0;width:100%;>*{background-color:transparent;height:30rem;perspective:1000px;width:18rem}}.ctas{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-m-l);justify-content:center;margin-top:auto;*{margin:0}}}

/******* Component: footer *******/
footer{background:var(--color-dark-background);box-shadow:0 -2px 4px var(--color-shadow);color:#fff;margin-top:auto;padding:var(--space-s-l);a{color:#fff;text-decoration:underline;transition:opacity var(--transition-fade);&:hover{opacity:.8}}}

/******* Component: header *******/
header{backdrop-filter:blur(5px);background:hsla(0,0%,100%,.6);box-shadow:0 2px 4px var(--color-shadow);position:fixed;top:0;width:100%;z-index:100;.container{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between}}

/******* Component: hero *******/
.section-wrapper.first-section .hero{--hero-text-width:calc(100% - clamp(0px, calc((100vw - 600px) * 2), 40%));.background-image{background-size:cover}.text{border-radius:var(--space-2xs-xs);overflow:hidden;padding:var(--space-s-l);width:var(--hero-text-width)}.full-screen{align-items:center;border:none;border-radius:50%;bottom:2rem;display:flex;height:2.6rem;justify-content:center;left:55%;overflow:hidden;padding:.3rem;position:absolute;transform:translateX(-50%);width:2.6rem;svg{height:100%;width:100%;stroke-width:1px}&:hover{svg{stroke-width:2px}}&:focus{outline:2px solid var(--color-primary);outline-offset:2px}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}&.is-reverse .text{margin-left:auto}}

/******* Component: media-image *******/
.section-wrapper .media-image.content{--threshold:50rem;-moz-column-gap:0;column-gap:0;.text{backdrop-filter:var(--glass-backdrop-filter);background-color:var(--glass-background);border:var(--glass-border);box-shadow:var(--glass-box-shadow);left:-1rem;padding:var(--space-s-l);position:relative;top:var(--space-s-m)}.image,.text{border-radius:var(--glass-border-radius);overflow:hidden}}

/******* Component: slider *******/
.section-wrapper .slider{.slider-wrapper{container-type:inline-size;height:clamp(30rem,35rem,40rem);margin-block-end:var(--space-2xl);position:relative;&:focus{outline:2px solid var(--color-primary);outline-offset:2px}}.slides{height:100%;list-style:none;margin:0;overflow:hidden;padding:0;position:relative;z-index:1;li{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));grid-template-rows:1fr;height:100%;left:0;position:absolute;top:0;transform:translateX(100%);transition:transform .6s ease-in-out;width:100%;@container (max-width: 40rem){grid-template-rows:1fr 1fr}.image{img{height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%}}.slide-content{background-color:var(--color-background-light);display:flex;flex-direction:column;gap:var(--space-xs-s);justify-content:center;padding:0 var(--space-s-l);.text{padding:0}}&.sliding-in{z-index:100}&.is-visible{transform:translateX(0)}&.reset{transform:translateX(100%)!important;transition:none!important}}}}

/******* Component: testimonial *******/
.testimonial{--threshold:25ch!important;background-color:var(--color-highlight-background);margin-inline:var(--gutter,2rem);overflow:hidden;padding:var(--space-l-2xl);.quotee{align-items:center;display:flex;flex-direction:column;flex-grow:1;justify-content:center;margin-inline:auto;max-width:17rem;text-align:center;.portrait{border-radius:50%;height:7rem;overflow:hidden;width:7rem}.name{font-size:var(--font-h5);font-weight:500;line-height:2}.company,.title{font-size:var(--font-p);line-height:1.2}.logo{height:3rem;margin-block-start:1.5em;overflow:hidden;width:3rem}}blockquote{flex-grow:2!important;font-size:var(--font-h2);font-style:italic;margin:0;max-width:40ch;text-align:center}}

/******* Component: text-only *******/
.section-wrapper .text-only{.prose{-moz-column-gap:2rem;column-gap:2rem;-moz-column-width:30ch;column-width:30ch;margin-inline:auto;max-width:clamp(45ch,65ch,80ch);.sub-title,h1,h2,h3{-moz-column-span:all;column-span:all;margin-bottom:var(--space-s);&+div{margin-top:0}}}.ctas{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-m-l);justify-content:center;*{margin:0}}}