/* Measurements and sequence from the supplied 80-second reference recording. */
img{height:auto}
.has-webgl:not(.no-webgl):not(.reduced-motion) .about{margin-top:-100svh}
.cinematic-ready:not(.no-webgl):not(.reduced-motion) .contact{margin-top:-100svh;overflow:visible}
.cinematic-ready:not(.no-webgl):not(.reduced-motion) .contact-hello{opacity:var(--hello-opacity,1)}
.contact-hello{padding-top:160px}.contact-hello h2{font-size:clamp(100px,14vw,240px)}
.office-scene .about .paper{visibility:hidden}
.screen-frame{border:0;box-shadow:none;border-radius:0}
.story-intro h2 .story-line{display:block}
.has-webgl:not(.no-webgl):not(.reduced-motion) .story-stars{display:none}
.has-webgl.work-scene:not(.no-webgl):not(.reduced-motion) .work-sticky{position:fixed;inset:0;opacity:calc(var(--work-opacity,1)*var(--work-entry,1));background:none;min-height:0;max-height:none}
.has-webgl.work-scene:not(.no-webgl):not(.reduced-motion) .work-sticky{pointer-events:none}
.has-webgl.work-scene:not(.no-webgl):not(.reduced-motion) .work-sticky button,.has-webgl.work-scene:not(.no-webgl):not(.reduced-motion) .work-sticky .carousel{pointer-events:auto}
@media(max-width:640px){.header{padding-inline:5%;gap:10px}.header .wordmark{gap:7px}.header .wordmark>span{font-size:20px}.header .brand-symbol{width:28px;height:21px}.header-cta{white-space:nowrap;font-size:14px;gap:7px}.menu-toggle{padding:6px}}
.boot-progress span{background:linear-gradient(90deg,#ded9bd 0 70%,transparent 70%) 0 0/calc((40vw - 10px)/21) 100% repeat-x}
@media(max-width:720px){.boot-progress span{background-size:calc((60vw - 10px)/21) 100%}}
.office-ready:not(.reduced-motion):not(.no-webgl) .office h2{opacity:0}.has-webgl .page-curl{display:none}
.project-dots{position:absolute;bottom:8.7%;left:50%;transform:translateX(-50%);display:flex;gap:12px;align-items:center;z-index:5}
.project-dots button{width:7px;height:7px;padding:0;background:#c4d1d6;border:0;border-radius:50%;box-shadow:0 0 4px #cef1ff80;transition:transform .2s,background .2s}
.project-dots button[aria-pressed=true]{background:#fff;transform:scale(1.5);outline:1px solid #eee;outline-offset:3px}
.project-dots button:after{content:"";position:absolute;inset:-12px}.project-dots button{position:relative}.concept-note>a{display:none}
.section-heading h2{font-size:clamp(44px,5vw,96px)}.section-heading.is-changing h2{animation:title-flip .45s ease-out}
@keyframes title-flip{0%{opacity:0;transform:perspective(600px) rotateX(-65deg) translateY(15px)}100%{opacity:1;transform:none}}
.office{height:210svh;position:relative}.office-sticky{height:100svh;position:sticky;top:0;overflow:hidden;pointer-events:none}
.office h2{position:absolute;left:0;top:29%;width:100%;text-align:center;font:400 clamp(75px,10vw,200px)/1 STIX,serif;color:#fffeed;text-shadow:0 2px 3px #69624b,0 0 16px #fff7c466;transform:perspective(1000px) rotateX(-9deg) translateY(calc(var(--office-progress,0)*-50px));opacity:calc(1 - var(--office-curl,0)*1.8);margin:0}
.page-curl{position:absolute;left:-20%;bottom:calc(-48% + var(--office-curl,0)*140%);width:150%;height:40%;transform:rotate(15deg);background:linear-gradient(0deg,#ffffe5 0%,#d5d3b9 12%,#ffffe9 35%,#fffde6 80%,#565c52 97%,#0008);filter:drop-shadow(0 -6px 10px #0005);opacity:clamp(0,calc(var(--office-curl,0)*12),1)}
.about-banner{height:41.6667vw;max-height:none;min-height:380px;background:radial-gradient(ellipse at 50% 35%,#a5c3b2,#6b9a8e 65%,#416a61);display:flex;align-items:flex-end;justify-content:center}
.about-banner img{width:auto;height:95%;max-width:75%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 14px #123b3c55)}
.about-banner>span{top:auto;bottom:7%;left:5%;font-size:clamp(32px,5vw,90px)}.about-banner small{font-size:clamp(7px,.7vw,13px)}
.paper{background:#ffffe6;color:#545240;clip-path:none;transform:none!important}.paper:before{pointer-events:none;opacity:.035}
.paper-content{max-width:1500px;padding:65px 40px 90px}.paper .paper-content h2{font-size:110px;line-height:1.02;max-width:1330px;margin:0 auto 70px;letter-spacing:-1.5px;text-shadow:none}
.intro-layout{display:grid;grid-template-columns:1fr 300px;gap:30px;align-items:end}.paper-intro{column-count:3;column-gap:28px}.paper .paper-content p{font-size:22px;line-height:1.28;margin:0 0 20px}.intro-device{width:100%;max-height:470px;object-fit:contain}
.rainbow-rule{height:54px;background:linear-gradient(to bottom,transparent 0 6%,#94bcc6 6% 13%,transparent 13% 19%,#dfa5a6 19% 27%,transparent 27% 33%,#d49b65 33% 41%,transparent 41% 47%,#e2c78f 47% 55%,transparent 55% 61%,#7eb2ab 61% 69%,transparent 69% 75%,#b4d0c7 75% 83%,transparent 83%);border-radius:0 0 50% 8%/0 0 12px 7px}
.client-content{padding-top:70px;padding-bottom:90px;max-width:1700px}.paper-content h3{font-weight:400;line-height:1;margin:0 auto 38px;letter-spacing:-1px}.paper .section-intro{max-width:690px;text-align:center;margin:0 auto 45px}
.client-showcase{display:grid;grid-template-columns:1fr 1.35fr 1fr;align-items:center;gap:15px}.client-showcase>img{width:100%;transform:rotate(-6deg)}.client-showcase>img:last-child{transform:scaleX(-1) rotate(-6deg)}
.client-names{display:grid;grid-template-columns:repeat(3,1fr);gap:50px 25px;padding:30px 10px;font:600 26px/1.05 STIX,serif;text-align:center}.client-names a{color:inherit;text-decoration:none}.client-names a:nth-child(2n){font-style:italic}.client-names a:hover{text-decoration:underline}.client-names a:last-child{grid-column:2}
.hardware-panorama{width:100%;display:block;height:auto;max-height:740px;object-fit:cover}
.serious-content{max-width:1330px;padding-top:75px;padding-bottom:100px}.serious-content h3{text-align:left;font-size:100px;margin-bottom:60px}.serious-columns{display:grid;grid-template-columns:1.15fr 1fr;gap:110px;align-items:start}.paper-signature{display:block;font:bold italic 45px STIX,serif;margin-top:55px;text-decoration:none;color:#66604a}.paper-signature .brand-symbol{display:inline-block;width:60px;height:33px}.paper-signature small{font:14px STIX,serif;display:block}
.consultation{border:3px dashed #9c9980;padding:38px 34px 30px;position:relative}.scissors{position:absolute;width:42px;left:-23px;top:100px}.consultation h4{font:600 28px/1.1 STIX,serif;margin:0 0 20px}.paper .consultation p{font-size:20px;line-height:1.3;margin:15px 0}.coupon-line{display:flex;gap:12px;font-size:20px;margin:35px 0}.coupon-line span{flex:1;border-bottom:1px solid #777661}.coupon-button{display:block;background:#54513d;color:#ffffe8;text-align:center;font:bold 22px STIX,serif;padding:14px 10px;text-decoration:none;margin-top:28px}.coupon-button:hover{background:#3d3b2b}
.shred-outro{height:100svh;display:flex;align-items:center;justify-content:center;gap:6%;overflow:hidden}.shred-outro h3{font:400 clamp(48px,4.7vw,90px)/1.1 STIX,serif;width:40%;margin:0}.shred-outro>img{width:31%;height:84%;object-fit:contain;align-self:flex-end}.paper-shreds{display:none}.shredding .paper{visibility:hidden}
.connection{height:620svh;margin-top:-100svh;z-index:0}.connection-sticky{overflow:hidden}.story-intro,.tie-caption{position:absolute;left:0;top:0;width:100%;height:100%;text-align:center;color:#fffde5;text-shadow:0 0 9px #ffffdb88,1px 1px #e68f60aa,-1px -1px #7ec2d5aa;pointer-events:none}
.story-intro{display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:var(--story-intro,0);transform:translateY(calc(var(--story-intro-out,0)*-55svh)) scale(var(--story-scale,1))}
.story-intro h2{font:500 clamp(42px,6.2vw,144px)/1.07 STIX,serif;max-width:1000px;width:70%;margin:0 auto 25px}.story-intro p{font:400 clamp(16px,1.7vw,32px) STIX,serif;margin:0}.story-stars{position:absolute;left:27%;top:66%;color:#a19639;font-size:90px;opacity:.6;transform:rotate(-23deg)}
.tie-caption{height:auto;top:16%;opacity:var(--tie-caption,0);transform:translateY(calc(var(--tie-out,0)*-100px))}.tie-caption h2{font:500 clamp(36px,5vw,96px)/1.1 STIX,serif;margin:0 20px 20px}.tie-caption p{font:400 clamp(17px,1.65vw,32px)/1.2 STIX,serif;margin:0 20px}
.contact{isolation:isolate}.contact-copy{background:#272a25;padding-top:40px;padding-bottom:60px;position:relative}.contact-copy h3{font-size:clamp(100px,16vw,300px);margin-bottom:70px}.contact-copy>p:not(.eyebrow){font-weight:400;font-size:32px;line-height:1.2}.contact-columns{font-weight:400;margin-top:95px;max-width:1100px}.contact-columns h4{font-weight:600}
.new-business{background:#272a25;width:min(900px,86%);margin:0 auto 90px;border:3px dashed #d0c9a0;padding:35px;display:flex;align-items:center;gap:35px;font:400 22px/1.3 STIX,serif}.new-business img{width:170px;height:175px;object-fit:contain}.new-business h4{font:600 32px STIX,serif;margin:0 0 15px}.new-business p{margin:0 0 15px}.new-business a{text-decoration:underline}.contact:after{content:"";position:absolute;inset:128svh 0 0;background:#272a25;z-index:-1;pointer-events:none}
.contact footer{display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:center;gap:50px;background:#272a25;border-top:1px solid #d9d3af55;padding:55px 12% 65px}.contact footer p{font:18px STIX,serif}.contact .footer-logo{font-size:55px;font-style:italic}.contact .footer-bottom{font-size:17px;display:flex;flex-direction:column;gap:10px;margin:20px 0 0;padding:0}.footer-seal{display:flex;align-items:center;flex-direction:column;font:700 17px/1.15 STIX,serif;letter-spacing:1px}.footer-seal svg{width:100px;fill:none;stroke:#ded9b8;stroke-width:1}.accessibility-seal{border:0;background:none;color:inherit;font:600 16px/1.25 STIX,serif;cursor:pointer;padding:20px}.accessibility-seal>span{display:block;font-size:55px;letter-spacing:-5px;margin-bottom:10px}.accessibility-seal:hover{text-decoration:underline}
#accessibility-dialog p{max-width:850px}#accessibility-dialog a{text-decoration:underline}.no-webgl .office,.reduced-motion .office{height:40svh;background:#34483f}.no-webgl .office-sticky,.reduced-motion .office-sticky{height:40svh}.no-webgl .page-curl,.reduced-motion .page-curl{display:none}.no-webgl .connection,.reduced-motion .connection{display:none}.no-webgl .shred-outro,.reduced-motion .shred-outro{display:none}.no-webgl .contact-hello,.reduced-motion .contact-hello{height:55svh}.no-webgl .contact:after,.reduced-motion .contact:after{inset:0}.no-webgl .paper,.reduced-motion .paper{visibility:visible}
.contact-copy,.new-business,.contact:after,.contact footer{background:#252622}
.contact-copy>p:not(.eyebrow),.contact-columns{font-weight:600}
.new-business{width:min(680px,86%);padding:14px;gap:25px;font-size:23px;margin-top:65px;margin-bottom:70px}
.new-business img{width:160px;height:160px;flex-shrink:0}.new-business h4{font-size:30px;margin-bottom:8px}.new-business p{font-size:22px;line-height:1.2}.new-business a{font-size:21px}
.contact footer{padding:85px 3% 55px;align-items:start}.footer-seal{justify-self:start;font:600 17px/1.15 Arial,sans-serif;letter-spacing:0}.footer-seal svg{width:180px;height:90px;margin-bottom:12px}.contact .footer-logo{font-size:42px}.contact footer p{font-size:23px;font-style:italic}.contact .footer-bottom{font-size:16px}
.accessibility-seal{position:relative;justify-self:end;width:240px;min-height:120px;padding:28px 43px;font:italic 600 15px/1.2 STIX,serif;text-decoration:underline}.accessibility-seal>span{display:none}.accessibility-seal:before{content:"";position:absolute;inset:0;background:url('./assets/reference/laurel.svg') center/contain no-repeat;pointer-events:none}
@media(max-width:1400px){.paper .paper-content h2{font-size:96px}.intro-layout{grid-template-columns:1fr 240px}.paper-intro{column-count:2}.paper .paper-content p{font-size:20px}.serious-content h3{font-size:80px}.serious-columns{gap:60px}.paper-content{padding-inline:55px}.client-names{font-size:23px;gap:40px 20px}.story-intro h2{max-width:800px}}
@media(max-width:1024px){.about-banner{height:62.5vw}.paper-content{padding:50px 40px 70px}.paper .paper-content h2{font-size:64px;max-width:780px}.paper-intro{column-count:2}.intro-layout{display:block}.intro-device{display:none}.serious-content h3{font-size:64px}.serious-columns{gap:45px}.client-showcase{grid-template-columns:1fr 2fr 1fr}.client-names{grid-template-columns:repeat(2,1fr);font-size:22px;gap:30px 20px}.client-names a:last-child{grid-column:auto}.consultation{padding:24px}.consultation h4{font-size:23px}.paper .consultation p{font-size:18px}.contact footer{padding-inline:6%;gap:20px}.story-intro h2{width:80%;font-size:72px}.tie-caption{top:18%}.tie-caption h2{font-size:58px}.shred-outro h3{width:43%;font-size:60px}.shred-outro>img{width:38%}}
@media(max-width:640px){.project-dots{gap:12px;bottom:11.5%}.project-dots button{width:5px;height:5px}.office{height:180svh}.office h2{font-size:80px;top:35%}.about-banner{height:72vw;min-height:330px}.about-banner img{height:86%;max-width:90%}.about-banner>span{font-size:33px;bottom:6%}.paper-content{padding:40px 26px 55px}.paper .paper-content h2{font-size:48px;margin-bottom:40px;letter-spacing:-.8px}.paper-intro{column-count:1}.paper .paper-content p{font-size:19px;line-height:1.35}.rainbow-rule{height:27px}.paper-content h3,.serious-content h3{font-size:48px;letter-spacing:-.6px}.client-showcase{display:block}.client-showcase>img{display:none}.client-names{font-size:26px;gap:40px 25px;padding-block:35px}.serious-columns{grid-template-columns:1fr;gap:45px}.paper-signature{font-size:34px;margin-top:30px}.consultation{margin-left:8px}.hardware-panorama{height:65vw;object-fit:cover}.shred-outro{flex-direction:column;padding:50px 25px 0;gap:15px}.shred-outro h3{font-size:46px;width:100%;text-align:center}.shred-outro>img{height:50%;width:75%;align-self:center}.connection{height:500svh}.story-intro h2{font-size:46px;line-height:1.06;width:88%}.story-intro p{font-size:18px;width:80%}.story-stars{font-size:50px;left:9%;top:68%}.tie-caption{top:18%}.tie-caption h2{font-size:40px}.tie-caption p{font-size:19px}.contact-copy>p:not(.eyebrow){font-size:25px}.contact-columns{grid-template-columns:1fr;gap:35px;margin-top:60px}.contact-columns h4{font-size:24px}.new-business{padding:25px;gap:15px;flex-direction:column;text-align:center;font-size:19px;margin-bottom:55px}.new-business img{height:135px;width:130px}.new-business h4{font-size:28px}.contact footer{grid-template-columns:1fr;gap:35px;padding:45px 8%}.footer-seal svg{width:70px}.footer-seal{font-size:14px}.contact .footer-logo{font-size:42px}.accessibility-seal>span{font-size:42px}.contact:after{top:110svh}}

.shredding.paper-scene .header:before{content:"";position:absolute;z-index:-1;inset:4px 0 auto;height:86px;opacity:var(--shred-rule-opacity,1);pointer-events:none;background:linear-gradient(to bottom,transparent 0 6%,#94bcc6 6% 13%,transparent 13% 19%,#dfa5a6 19% 27%,transparent 27% 33%,#d49b65 33% 41%,transparent 41% 47%,#e2c78f 47% 55%,transparent 55% 61%,#7eb2ab 61% 69%,transparent 69% 75%,#b4d0c7 75% 83%,transparent 83%);border-radius:50% 20% 50% 8%/10px 10px 12px 7px}
@media(max-width:640px){.shredding.paper-scene .header:before{height:55px;top:12px}}

@media(min-width:721px){.contact-hello{padding-top:260px}.contact-hello h2,.contact-copy h3{font-size:clamp(140px,10.5vw,200px)}.contact-copy>p:not(.eyebrow){font-size:28px}.contact-columns{max-width:920px}}

.cinematic-ready .connection-sticky{position:fixed;inset:0;height:100svh;visibility:hidden;pointer-events:none}
.cinematic-ready.story-visible .connection-sticky{visibility:visible}
.paper-transition .story-intro{visibility:hidden}
.connection-sticky .skip-link:focus{pointer-events:auto}
