:root{--blue:#005574;--navy:#052c3d;--ink:#143645;--gold:#c99336;--soft:#f0f5f7;--line:#dbe5e9;--text:#607681}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);background:white;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(58px,7.3vw,112px)}h2{font-size:clamp(34px,4.2vw,63px)}h3{font-size:25px}.gold{color:var(--gold)}.word-accent{color:var(--blue)}.eyebrow{display:block;font-size:12px;letter-spacing:.15em;font-weight:600;line-height:1.8}.pill{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:14px 25px;border:1px solid var(--blue);border-radius:40px;background:var(--blue);color:white;font-size:14px;font-weight:600;white-space:normal;text-align:center;transition:background .25s,transform .42s}.pill:hover{background:var(--navy);transform:translateY(-2px)}.pill.light{border-color:#d4a65d;color:var(--navy);background:#e7bb76}.pill.light:hover{background:#f0c88a}.pill.secondary{background:transparent;color:var(--blue)}.text-link{display:inline-block;width:fit-content;background:none;border:0;border-bottom:1px solid var(--gold);padding:0 0 6px;font-size:14px;line-height:1.5}.text-link:hover{color:var(--gold)}.site-header{position:sticky;top:0;z-index:20;background:#ffffffee;backdrop-filter:blur(15px);display:flex;justify-content:space-between;align-items:center;min-height:91px;padding:18px 6%;border-bottom:1px solid var(--line)}.logo{width:160px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:14px}.site-header nav>a:not(.meet){padding:8px 0}.site-header nav a[aria-current]{color:var(--blue);border-bottom:2px solid var(--gold)}.meet{border:1px solid var(--gold);padding:11px 20px;border-radius:35px;color:var(--blue);margin-left:14px}.meet:hover{background:var(--soft)}.menu-toggle{display:none}.pattern{background-color:var(--navy);color:white;position:relative;isolation:isolate;overflow:hidden}.pattern:before{content:'';pointer-events:none;position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(117deg,transparent 0 57px,#ffffff06 57px 58px,transparent 58px 116px),radial-gradient(ellipse at 90% 10%,#087090aa,transparent 65%)}.pattern-soft{background:linear-gradient(125deg,#f2f6f7aa,white 50%,#e7f0f4),repeating-linear-gradient(115deg,transparent 0 48px,#00557407 49px 50px)}.home-hero{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:42px 6% 0;background:linear-gradient(120deg,#fff 25%,#edf4f7 95%);overflow:hidden}.hero-copy{padding:35px 0 45px;z-index:2}.hero-copy h1{font-size:clamp(70px,8.5vw,132px);line-height:1.08;color:var(--navy);margin-bottom:36px}.hero-stage{position:relative;min-width:0;aspect-ratio:1.07;max-height:615px;background:transparent;border-radius:8px 8px 80px 8px;overflow:hidden;box-shadow:0 25px 60px #00476310}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease;pointer-events:none;background:#eef3f5}.hero-slide.active{opacity:1;pointer-events:auto}.hero-slide>img{width:100%;height:100%;object-fit:cover;animation:floatImage 9s ease-in-out infinite;transform:scale(1.025)}.hero-slide>span{position:absolute;bottom:62px;left:25px;background:#ffffffed;border:1px solid #ffffff60;border-radius:35px;padding:9px 15px;font-size:11px;letter-spacing:.1em;color:var(--blue)}.stage-controls{position:absolute;bottom:18px;left:25px;right:35px;display:flex;justify-content:space-between;align-items:center}.slide-dots{display:flex;gap:10px}.slide-dots button{background:#899da3;border:0;border-radius:50%;width:9px;height:9px;padding:0;box-shadow:0 0 0 5px #ffffff44}.slide-dots button.active{background:var(--gold)}.motion-toggle{background:#fffde6e8;border:0;border-radius:20px;font-size:12px;padding:5px 12px;color:var(--navy)}.hero-bottom{display:flex;justify-content:space-between;grid-column:1/-1;gap:20px;margin-top:50px;border-top:1px solid #c7d9e1;padding:22px 0;font-size:11px;letter-spacing:.12em}.hero-bottom a{font-size:12px;letter-spacing:0}.client-section{padding:44px 6% 50px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-heading .eyebrow{margin-bottom:18px}.section-note{font-size:16px;line-height:1.7;color:var(--text);max-width:350px}.client-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:15px;align-items:center}.client-tile{min-width:0;background:white;border:1px solid #e7edf0;border-radius:8px;padding:24px 12px;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s}.client-tile img{width:100%;height:56px;object-fit:contain;mix-blend-mode:multiply}.client-strip .client-tile span{display:none}.client-tile:hover{transform:translateY(-5px);border-color:#cba05b;box-shadow:0 12px 30px #193b4710}.blue-statement{padding:55px 6% 70px}.statement-top{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #ffffff2b;padding-bottom:22px}.statement-top>span:last-child{font-size:11px;letter-spacing:.12em}.statement-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;align-items:end;padding-top:50px}.statement-layout h2{font-size:clamp(43px,5.5vw,83px)}.statement-layout p{font-size:20px;color:#d3e2e8;line-height:1.65;margin-bottom:30px;max-width:450px}.section{padding:80px 6%}.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.capability{border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:box-shadow .3s,transform .3s}.capability:hover{box-shadow:0 20px 45px #00557412;transform:translateY(-7px)}.cap-visual{aspect-ratio:1.14;position:relative;overflow:hidden;background:var(--soft)}.cap-visual>img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.capability:hover .cap-visual>img{transform:scale(1.07)}.cap-number{position:absolute;top:16px;left:16px;color:var(--blue);background:#fffddaf0;border-radius:50%;display:grid;place-items:center;width:32px;height:32px;font-size:12px}.cap-body{padding:23px 21px 28px}.service-icon{width:42px;height:42px;object-fit:contain;margin-bottom:19px}.cap-body h3{font-size:22px;min-height:76px;line-height:1.2;letter-spacing:-.025em}.cap-body p{font-size:16px;color:var(--text);line-height:1.5;min-height:72px;margin:13px 0 22px}.cap-body .text-link{font-size:13px}.selected-work{padding-top:35px}.featured-image{aspect-ratio:1.9;position:relative;overflow:hidden;border-radius:12px;background:var(--soft)}.featured-image>img{height:100%;width:100%;object-fit:cover;transition:transform 1s}.featured-project:hover img{transform:scale(1.035)}.project-badge{position:absolute;top:25px;left:25px;background:#ffffffed;padding:10px 17px;border-radius:30px;font-size:11px;letter-spacing:.06em}.project-caption{display:flex;align-items:end;justify-content:space-between;gap:20px;padding-top:25px}.project-caption h3{font-size:30px}.project-caption>span{font-size:14px;color:var(--text)}footer{position:relative;background:var(--navy);color:#cddfe6;padding:65px 6% 25px;margin-top:50px;background-image:repeating-linear-gradient(117deg,transparent 0 80px,#ffffff03 81px 82px)}.footer-call{display:flex;justify-content:space-between;gap:30px;align-items:end;border-bottom:1px solid #ffffff25;padding-bottom:60px;margin-bottom:50px}.footer-call .eyebrow{font-size:11px;color:#b9ced9}.footer-call>div>a{display:block;font-size:clamp(47px,6vw,88px);line-height:1.1;letter-spacing:-.04em;font-weight:600;margin-top:20px;color:white}.footer-grid{display:grid;grid-template-columns:1.2fr .6fr 1fr;gap:10%}.footer-brand>img{width:155px;filter:brightness(0) invert(1);margin-bottom:24px}.footer-grid p{font-size:15px;line-height:1.8;margin:20px 0}.footer-grid>div:not(:first-child)>a{display:block;margin:14px 0;font-size:14px;overflow-wrap:anywhere}.footer-grid .eyebrow{color:white;margin-bottom:24px}.socials{display:flex;gap:13px;flex-wrap:wrap}.socials a{font-size:12px;border-bottom:1px solid #b4c5ce55;padding-bottom:4px}.socials a:hover{color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;border-top:1px solid #ffffff25;margin-top:45px;padding-top:22px;font-size:12px}.page-intro{padding:60px 6% 45px}.page-intro h1{margin:25px 0 30px;max-width:1100px;line-height:1.13}.intro-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px}.intro-bottom p{max-width:610px;font-size:19px;line-height:1.7;color:var(--text)}.service-anchor{padding:20px 6%;display:flex;gap:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;flex-wrap:wrap}.service-anchor a:hover{color:var(--gold)}.service-feature{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;scroll-margin-top:92px}.tinted{background:var(--soft)}.service-feature-visual{position:relative;overflow:hidden;aspect-ratio:1.05;border-radius:9px 9px 65px 9px;box-shadow:0 25px 60px #0055740a}.service-feature-visual>img{width:100%;height:100%;object-fit:cover;animation:slowZoom 12s ease-in-out infinite}.visual-index{position:absolute;left:25px;bottom:23px;font-size:45px;font-weight:600;color:var(--gold);line-height:1}.service-feature-copy h2{font-size:clamp(34px,3.6vw,51px);letter-spacing:-.025em;line-height:1.17;overflow-wrap:normal}.service-feature-copy h3{font-size:23px;margin:20px 0 14px}.service-feature-copy p{font-size:17px;line-height:1.75;color:var(--text);margin-bottom:22px}.service-label{display:flex;align-items:center;gap:18px;margin-bottom:25px}.service-label img{width:45px;height:45px;object-fit:contain}.service-feature details{border-top:1px solid #cbdae0;border-bottom:1px solid #cbdae0;padding:15px 0;margin:0 0 25px}.service-feature summary{font-size:14px;cursor:pointer;font-weight:600}.service-feature ul{padding-left:18px;margin:15px 0 0;columns:2;column-gap:20px}.service-feature li{font-size:14px;line-height:1.6;margin-bottom:10px;break-inside:avoid}.process-section{padding:65px 6%}.process-section h2{margin:25px 0 40px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.process-grid article{padding-top:25px;border-top:1px solid #ffffff44}.process-grid span{font-size:11px;letter-spacing:.1em;color:#dfb76c}.process-grid h3{font-size:23px;margin:18px 0}.process-grid p{font-size:16px;color:#c2d5df;line-height:1.7}.about-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:center;padding:65px 6%}.about-hero h1{font-size:clamp(53px,5.5vw,84px);margin:25px 0}.about-hero p{font-size:18px;color:#cbdfe7;line-height:1.8;max-width:570px;margin-bottom:30px}.about-art{width:100%;border-radius:5px 5px 60px 5px;animation:floatImage 10s ease-in-out infinite}.about-story{display:grid;grid-template-columns:1fr 2fr;gap:7%}.about-story p{font-size:19px;line-height:1.8;color:var(--text);max-width:760px;margin-top:25px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.value-grid article{border-top:2px solid var(--gold);padding:25px 0 0}.value-grid article>span{font-size:13px;color:var(--gold)}.value-grid h3{margin:20px 0}.value-grid p{font-size:17px;color:var(--text);line-height:1.8}.work-count{font-size:12px;letter-spacing:.12em}.work-client-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.work-client-grid .client-tile{padding:38px 35px;background:#fcfdfe;min-height:205px}.work-client-grid .client-tile img{height:80px;margin:15px 0 25px;max-width:270px}.work-client-grid .client-tile span{font-size:14px}.work-client-grid .client-tile[aria-pressed=true]{border-color:var(--gold);background:#f6f2e8}.work-showcase[hidden]{display:none}.showcase-heading{display:flex;gap:30px;justify-content:space-between;align-items:center}.showcase-heading .eyebrow{margin-bottom:16px}.showcase-intro{display:grid;grid-template-columns:1fr 1.3fr;gap:50px;padding:35px 0 25px}.showcase-intro p{font-size:17px;line-height:1.8;color:var(--text)}.deliverable-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:35px}.deliverable-tags span{border:1px solid #c8d9e1;padding:8px 15px;border-radius:25px;font-size:13px}.portfolio-gallery figure{margin:0 0 45px}.portfolio-gallery figure>img{width:100%;border-radius:9px}.portfolio-gallery figcaption{margin-top:15px;font-size:14px;color:var(--text)}.campaign-reference{border-top:1px solid var(--line);padding-top:18px}.campaign-reference summary{cursor:pointer;font-size:15px;margin-bottom:20px}.campaign-reference>img{width:100%}.campaign-reference p{font-size:13px;margin-top:15px}.contact-hero{padding:65px 6%;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.contact-hero h1{font-size:clamp(53px,5.5vw,83px);margin:25px 0}.contact-hero p{font-size:18px;color:var(--text);line-height:1.8;margin-bottom:30px;max-width:490px}.contact-art{overflow:hidden;border-radius:10px 10px 60px 10px;aspect-ratio:1.08;box-shadow:0 20px 60px #00557415}.contact-art img{width:100%;height:100%;object-fit:cover;animation:slowZoom 12s ease-in-out infinite}.contact-info{padding:60px 6%}.contact-info h2{margin:20px 0 40px}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.contact-cards>a{padding:28px 25px;background:#ffffff09;border:1px solid #ffffff25;border-radius:10px;transition:background .3s}.contact-cards>a:hover{background:#ffffff15}.contact-cards span{display:block;font-size:11px;letter-spacing:.1em;color:#e0b567}.contact-cards strong{display:block;font-size:clamp(15px,1.6vw,23px);margin:15px 0 12px;font-weight:500;overflow-wrap:anywhere}.contact-cards small{font-size:13px;color:#c5d8e0}.contact-social{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:30px}.contact-social .socials{gap:24px}.contact-social .socials a{font-size:14px}.inquiry-section{display:grid;grid-template-columns:1fr 1.35fr;gap:8%;scroll-margin-top:92px}.inquiry-section h2{margin:25px 0}.inquiry-section>div>p{font-size:17px;line-height:1.8;max-width:350px;color:var(--text)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}form label{display:block;font-size:14px;font-weight:500;margin-bottom:22px}input,select,textarea{margin-top:10px;width:100%;border:1px solid #c9dbe3;border-radius:6px;background:#f9fbfc;padding:13px 16px;font-size:16px;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:1px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#7d909b}.form-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.form-status{color:var(--blue);font-size:14px;margin-top:18px;line-height:1.7}.motion-paused .motion-image,.motion-paused .hero-object{animation-play-state:paused!important}.reveal{opacity:1;transform:none;transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter 1.1s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.js-motion .reveal:not(.visible){opacity:0;transform:translateY(38px);filter:blur(3px)}.js-motion .reveal.visible{opacity:1;transform:translateY(0);filter:blur(0)}.reveal[data-motion="left"]{transform:translateX(-38px)}.reveal[data-motion="right"]{transform:translateX(38px)}.reveal[data-motion="scale"]{transform:scale(.94)}.js-motion .reveal[data-motion="left"]:not(.visible),.js-motion .reveal[data-motion="right"]:not(.visible),.js-motion .reveal[data-motion="scale"]:not(.visible){opacity:0;filter:blur(3px)}.js-motion .reveal[data-motion="left"].visible,.js-motion .reveal[data-motion="right"].visible{transform:translateX(0)}.js-motion .reveal[data-motion="scale"].visible{transform:scale(1)}@keyframes floatImage{0%,100%{transform:scale(1.025) translateY(0)}50%{transform:scale(1.025) translateY(-7px)}}@keyframes slowZoom{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}@media(min-width:1600px){body{max-width:1900px;margin:auto}}@media(max-width:1100px){.capability-grid{grid-template-columns:1fr 1fr;gap:25px}.cap-visual{aspect-ratio:1.55}.cap-body h3{min-height:0}.cap-body p{min-height:0}.cap-body{padding:25px}.client-strip{gap:9px}.client-tile{padding:20px 9px}.client-tile img{height:45px}.site-header nav{gap:24px}.service-feature{gap:5%}.service-feature ul{columns:1}.footer-grid{gap:6%}.contact-cards strong{font-size:17px}}@media(max-width:760px){.site-header{padding:15px 5%;min-height:79px}.logo{width:132px}.menu-toggle{display:block;padding:9px 15px;border:1px solid var(--line);border-radius:25px;background:white;font-size:14px}.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:white;padding:25px 5%;box-shadow:0 20px 30px #12394810;gap:20px;flex-wrap:wrap}.site-header nav.open{display:flex}.meet{margin:0}.home-hero{padding:15px 5% 0;grid-template-columns:1fr}.hero-copy{padding:26px 0 30px}.hero-copy h1{font-size:clamp(65px,13.6vw,100px);margin-bottom:25px;line-height:1.1}.hero-stage{aspect-ratio:1.18;border-bottom-right-radius:45px;max-height:490px}.hero-bottom{margin-top:25px;font-size:9px;letter-spacing:.06em;align-items:center}.hero-bottom a{font-size:11px;white-space:nowrap}.hero-slide>span{font-size:10px}.client-section{padding:35px 5%}.section-heading{margin-bottom:28px;align-items:start}.client-strip{grid-template-columns:repeat(4,1fr);gap:10px}.client-tile{padding:20px 10px;min-height:80px}.client-tile img{height:40px}.section-heading .eyebrow{font-size:11px}.client-section .text-link{font-size:12px;white-space:nowrap}.blue-statement{padding:35px 5% 45px}.statement-top>span:last-child{display:none}.statement-layout{grid-template-columns:1fr;gap:30px;padding-top:30px}.statement-layout h2{font-size:48px}.statement-layout p{font-size:18px}.section{padding:55px 5%}.section-heading h2{font-size:38px}.section-heading{flex-wrap:wrap}.section-note{font-size:15px}.capability-grid{gap:15px}.cap-visual{aspect-ratio:1.05}.cap-body{padding:20px 15px}.cap-body h3{font-size:20px;line-height:1.25;min-height:78px}.cap-body p{font-size:15px;min-height:69px;margin:12px 0 18px}.cap-body .text-link{font-size:12px}.service-icon{width:35px;height:35px}.selected-work{padding-top:10px}.featured-image{aspect-ratio:1.12}.project-badge{top:15px;left:15px;font-size:9px;padding:8px 12px}.project-caption{align-items:start;flex-direction:column;gap:15px}.project-caption h3{font-size:27px}.project-caption>span{font-size:13px}.footer-call{flex-direction:column;align-items:start;gap:28px;padding-bottom:35px;margin-bottom:35px}.footer-call>div>a{font-size:54px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:1/-1}.footer-grid>div:not(:first-child)>a{font-size:13px}.footer-grid .eyebrow{font-size:11px}.footer-bottom{font-size:11px;gap:12px}.footer-bottom>span:nth-child(2){display:none}footer{padding:45px 5% 22px}.page-intro{padding:40px 5%}.page-intro h1{font-size:clamp(44px,9.9vw,74px);line-height:1.15;margin:25px 0}.intro-bottom{flex-direction:column;align-items:start;gap:25px}.intro-bottom p{font-size:17px}.service-anchor{padding:17px 5%;gap:18px;font-size:12px}.service-feature{grid-template-columns:1fr;gap:35px}.service-feature-visual{aspect-ratio:1.22}.service-feature-copy h2{font-size:37px}.service-feature-copy h3{font-size:21px}.service-feature-copy p{font-size:16px}.service-feature ul{columns:2}.process-section{padding:45px 5%}.process-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.process-grid h3{font-size:21px}.process-grid p{font-size:15px}.about-hero{grid-template-columns:1fr;padding:45px 5%;gap:40px}.about-hero h1{font-size:clamp(43px,10vw,66px);line-height:1.15}.about-hero p{font-size:17px}.about-art{max-height:450px;object-fit:cover}.about-story{grid-template-columns:1fr;gap:30px}.about-story p{font-size:17px}.value-grid{grid-template-columns:1fr;gap:30px}.value-grid h3{font-size:25px}.work-client-grid{grid-template-columns:1fr 1fr;gap:15px}.work-client-grid .client-tile{padding:25px 15px;min-height:160px}.work-client-grid .client-tile img{height:60px;max-width:170px}.showcase-heading{align-items:start;flex-direction:column;gap:22px}.showcase-heading h2{font-size:43px}.showcase-intro{grid-template-columns:1fr;gap:20px}.showcase-intro h3{font-size:26px}.showcase-intro p{font-size:16px}.deliverable-tags span{font-size:12px}.contact-hero{grid-template-columns:1fr;padding:45px 5%;gap:35px}.contact-hero h1{font-size:clamp(48px,10vw,72px);line-height:1.15}.contact-hero p{font-size:17px}.contact-art{aspect-ratio:1.25}.contact-info{padding:45px 5%}.contact-cards{grid-template-columns:1fr;gap:15px}.contact-cards strong{font-size:22px}.contact-social{flex-direction:column;align-items:start;gap:30px}.contact-social .socials{gap:18px}.inquiry-section{grid-template-columns:1fr;gap:35px}.form-grid{gap:0 15px}.inquiry-section h2{font-size:42px}.inquiry-section>div>p{max-width:100%}html{scroll-padding-top:80px}}@media(max-width:380px){.capability-grid{grid-template-columns:1fr}.cap-visual{aspect-ratio:1.4}.cap-body h3,.cap-body p{min-height:0}.work-client-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.service-feature ul{columns:1}.footer-grid{grid-template-columns:1fr}.hero-copy h1{font-size:61px}.hero-bottom>span{max-width:200px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal:not(.visible){opacity:1;transform:none}}
/* Awtad brand palette and focused hero */
:root{--blue:#00577d;--ink:#00577d;--text:#00577d;--gold:#cb943f}.hero-copy h1{color:var(--blue)}.home-hero{padding-bottom:45px;min-height:640px}.hero-stage{background:none;box-shadow:none;border-radius:0;overflow:visible;aspect-ratio:1;max-height:570px;display:flex;align-items:center;justify-content:center}.hero-stage>.brand-hero{width:86%;height:100%;object-fit:contain;animation:brandFloat 8s ease-in-out infinite;filter:drop-shadow(0 20px 18px #00577d14)}.footer-grid{grid-template-columns:1.2fr 1fr;gap:15%}.socials{gap:12px}.social-icon{display:inline-flex!important;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #cb943f66!important;border-radius:50%;padding:10px!important;color:var(--gold);transition:background .25s,transform .42s}.social-icon svg{display:block;width:21px;height:21px}.social-icon:hover{background:#cb943f20;transform:translateY(-3px)}.contact-social .socials{gap:12px}.pattern,footer{color:var(--gold)}.pattern h1,.pattern h2,.pattern h3,.pattern .eyebrow,.pattern p,.pattern span,footer a,footer p,footer span,footer strong,.footer-grid .eyebrow,.footer-call>div>a,.footer-call .eyebrow,.process-grid p,.process-grid span,.about-hero p,.statement-layout p,.contact-cards small{color:var(--gold)}.pattern .pill.light{color:var(--blue)}.footer-call .pill.light{color:var(--blue)}.footer-bottom{color:var(--gold)}.cap-number{color:var(--blue)}.back-to-top{position:fixed;bottom:28px;right:28px;z-index:30;display:flex;align-items:center;justify-content:center;width:54px;height:54px;border:1px solid #cb943f88;border-radius:50%;background:#fffffff5;box-shadow:0 6px 22px #00577d20;padding:13px;opacity:0;visibility:hidden;transform:translateY(12px);pointer-events:none;transition:opacity .25s,transform .25s,visibility .25s}.back-to-top img{width:100%;height:100%;object-fit:contain}.back-to-top[data-visible=true]{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.back-to-top:hover{box-shadow:0 8px 25px #00577d30;background:white}@keyframes brandFloat{0%,100%{transform:translateY(0) rotateY(-3deg)}50%{transform:translateY(-10px) rotateY(3deg)}}@media(max-width:760px){.home-hero{min-height:0;padding-bottom:30px}.hero-stage{aspect-ratio:1.15;max-height:420px}.hero-stage>.brand-hero{width:80%}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-brand{grid-column:auto}.back-to-top{width:48px;height:48px;bottom:18px;right:18px;padding:11px}.contact-social .socials{gap:10px}}@media(prefers-reduced-motion:reduce){.hero-stage>.brand-hero{animation:none!important}}
/* Pointer-responsive sculpture, always visible */
.brand-sculpture{position:absolute;inset:0 2%;width:auto;height:auto;isolation:isolate;transform-origin:50% 55%;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));filter:drop-shadow(var(--shadow-x,0px) 24px 16px #00577d18);will-change:transform}.brand-solid,.brand-reflection{position:absolute;inset:0;width:100%;height:100%}.brand-solid{object-fit:contain;display:block;opacity:1}.hero-stage{overflow:visible;perspective:1100px}.brand-reflection{pointer-events:none;background:radial-gradient(ellipse 48% 38% at var(--light-x,50%) var(--light-y,45%),#fff8e2a8 0%,#ffffff45 24%,#ffffff0a 52%,transparent 76%);-webkit-mask:url('/assets/hero-icon-monument.png') center / contain no-repeat;mask:url('/assets/hero-icon-monument.png') center / contain no-repeat;mask-mode:alpha;mix-blend-mode:screen;opacity:var(--light-opacity,0);will-change:opacity}.hero-stage .brand-solid{animation:none!important}@media(max-width:760px){.brand-sculpture{inset:0 6%}}@media(prefers-reduced-motion:reduce){.brand-sculpture{transform:none;will-change:auto}}
/* Bilingual navigation and Arabic typography */
@font-face{font-family:Alexandria;src:url('/assets/fonts/Alexandria-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Alexandria;src:url('/assets/fonts/Alexandria-500.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Alexandria;src:url('/assets/fonts/Alexandria-600.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Alexandria;src:url('/assets/fonts/Alexandria-700.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}.site-header{direction:ltr;gap:24px}.language-switch{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 14px;border:1px solid var(--line);border-radius:22px;color:var(--blue);font-family:Alexandria,Arial,sans-serif;font-size:13px;white-space:nowrap}.language-switch:hover{border-color:var(--gold);background:var(--soft)}[lang=ar] body{font-family:Alexandria,Arial,sans-serif;font-feature-settings:'lnum' 1,'tnum' 1;font-variant-numeric:lining-nums tabular-nums}[lang=ar] h1,[lang=ar] h2,[lang=ar] h3{letter-spacing:0;line-height:1.5}[lang=ar] p{line-height:1.95}[lang=ar] .eyebrow{letter-spacing:0;line-height:1.9}[lang=ar] .site-header nav{direction:rtl;gap:25px}[lang=ar] .hero-copy h1{font-size:clamp(57px,7vw,105px);line-height:1.5}[lang=ar] .page-intro h1{font-size:clamp(48px,6.6vw,95px)}[lang=ar] .meet{margin-left:0;margin-right:10px}[lang=ar] .service-feature ul{padding-left:0;padding-right:18px}[lang=ar] .socials{direction:ltr;justify-content:flex-end}[lang=ar] .footer-grid a[dir=ltr]{text-align:right}[lang=ar] .sample-number,[lang=ar] .work-count{direction:ltr;unicode-bidi:isolate}[lang=ar] .section-heading,[lang=ar] .statement-layout{direction:rtl}[lang=ar] .cap-body h3{min-height:90px;font-size:20px;line-height:1.65}[lang=ar] .cap-body p{min-height:85px}[lang=ar] .service-feature-copy h2{font-size:clamp(30px,3.3vw,46px)}[lang=ar] .footer-call>div>a{font-size:clamp(43px,5vw,72px);line-height:1.6}
/* Three portfolio pieces, side by side, expanding in place */
.portfolio-gallery{display:flex;align-items:flex-start;gap:22px;margin-top:25px}.portfolio-gallery .work-sample{flex:0 0 calc((100% - 44px)/3);min-width:0;margin:0;outline-offset:6px;cursor:zoom-in;transition:flex .6s cubic-bezier(.22,.65,.25,1),transform .6s}.work-sample-image{height:300px;overflow:hidden;border-radius:9px;background:#e4edf1;transition:height .6s}.portfolio-gallery .work-sample img{width:100%;height:100%;object-fit:cover;border-radius:0;transition:transform .6s}.portfolio-gallery .work-sample figcaption{display:flex;align-items:flex-start;gap:12px;margin-top:18px}.sample-number{font-size:12px;color:var(--gold);padding-top:4px;flex-shrink:0}.work-sample h3{font-size:17px;line-height:1.5;letter-spacing:0;color:var(--blue)}.portfolio-gallery:has(.work-sample:hover) .work-sample,.portfolio-gallery:has(.work-sample:focus-visible) .work-sample,.portfolio-gallery:has(.work-sample.expanded) .work-sample{flex:.7 1 0}.portfolio-gallery .work-sample:hover,.portfolio-gallery .work-sample:focus-visible,.portfolio-gallery .work-sample.expanded{flex:2 1 0;cursor:zoom-out}.work-sample:hover .work-sample-image,.work-sample:focus-visible .work-sample-image,.work-sample.expanded .work-sample-image{height:370px}.work-sample:hover img,.work-sample:focus-visible img,.work-sample.expanded img{transform:scale(1.035)}[lang=ar] .work-sample h3{font-size:16px;line-height:1.8}@media(max-width:1100px){.site-header{gap:16px}.site-header nav{gap:20px}.meet{margin-left:0}.portfolio-gallery{gap:15px}.work-sample-image{height:250px}.work-sample:hover .work-sample-image,.work-sample:focus-visible .work-sample-image,.work-sample.expanded .work-sample-image{height:310px}}@media(max-width:760px){.site-header{gap:12px}.logo{margin-right:auto}.language-switch{font-size:12px;padding:7px 12px}[lang=ar] .site-header nav{gap:20px}[lang=ar] .hero-copy h1{font-size:clamp(50px,10.5vw,75px)}[lang=ar] .page-intro h1,[lang=ar] .about-hero h1,[lang=ar] .contact-hero h1{font-size:clamp(36px,8vw,60px)}[lang=ar] h2,[lang=ar] .section-heading h2{font-size:32px;line-height:1.65}[lang=ar] .footer-call>div>a{font-size:42px}[lang=ar] .service-feature-copy h2{font-size:32px}[lang=ar] .cap-body h3{font-size:18px;min-height:95px}[lang=ar] .cap-body p{font-size:14px;min-height:85px}[lang=ar] .pill{font-size:13px}.portfolio-gallery{overflow-x:auto;gap:16px;padding:8px 5px 22px;scroll-snap-type:x proximity}.portfolio-gallery .work-sample,.portfolio-gallery:has(.work-sample:hover) .work-sample,.portfolio-gallery:has(.work-sample:focus-visible) .work-sample,.portfolio-gallery:has(.work-sample.expanded) .work-sample{flex:0 0 76%;scroll-snap-align:center}.work-sample-image{height:290px}.work-sample:hover .work-sample-image,.work-sample:focus-visible .work-sample-image,.work-sample.expanded .work-sample-image{height:330px}.work-sample h3{font-size:17px}}@media(prefers-reduced-motion:reduce){.portfolio-gallery .work-sample,.work-sample-image,.work-sample img{transition:none}}
.hero-title-motion{
  opacity:0;
  transform:translateX(-42px);
  animation:heroTitleIn 1.15s cubic-bezier(.22,1,.36,1) .15s forwards;
}

@keyframes heroTitleIn{
  to{
    opacity:1;
    transform:translateX(0);
  }
}
.hero-button-motion{
  opacity:0;
  transform:translateY(24px);
  animation:heroButtonIn 1s cubic-bezier(.22,1,.36,1) .55s forwards;
}

@keyframes heroButtonIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.hero-sculpture-motion{
  opacity:0;
  transform:translateX(55px);
  animation:heroSculptureIn 1.35s cubic-bezier(.22,1,.36,1) .3s forwards;
}

@keyframes heroSculptureIn{
  to{
    opacity:1;
    transform:translateX(0);
  }
}
.clients-heading-motion{
  opacity:0;
  transform:translateY(-18px);
  animation:clientsHeadingIn 1s cubic-bezier(.22,1,.36,1) .1s forwards;
}

@keyframes clientsHeadingIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}


.js-motion .client-tile-motion{
  opacity:0;
  transform:translateY(24px);
}

.js-motion .client-tile-motion.client-tile-visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1);
}

.js-motion .client-tile-motion:nth-child(1){transition-delay:.1s}
.js-motion .client-tile-motion:nth-child(2){transition-delay:.3s}
.js-motion .client-tile-motion:nth-child(3){transition-delay:.5s}
.js-motion .client-tile-motion:nth-child(4){transition-delay:.7s}
.js-motion .client-tile-motion:nth-child(5){transition-delay:.9s}
.js-motion .client-tile-motion:nth-child(6){transition-delay:1.1s}
.js-motion .client-tile-motion:nth-child(7){transition-delay:1.3s}
.about-title-motion{
  opacity:0;
  transform:translateX(-42px);
  animation:aboutTitleIn 1.15s cubic-bezier(.22,1,.36,1) .15s forwards;
}

@keyframes aboutTitleIn{
  to{
    opacity:1;
    transform:translateX(0);
  }
}
.about-eyebrow-motion{
  opacity:0;
  transform:translateY(-18px);
  animation:aboutEyebrowIn 1s cubic-bezier(.22,1,.36,1) .05s forwards;
}

@keyframes aboutEyebrowIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.about-copy-motion{
  opacity:0;
  transform:translateY(26px);
  animation:aboutCopyIn 1.1s cubic-bezier(.22,1,.36,1) .45s forwards;
}

@keyframes aboutCopyIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.about-button-motion{
  opacity:0;
  transform:translateY(22px);
  animation:aboutButtonIn 1s cubic-bezier(.22,1,.36,1) .75s forwards;
}

@keyframes aboutButtonIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.about-art-motion{
  opacity:0;
  transform:translateX(55px);
  animation:aboutArtIn 1.35s cubic-bezier(.22,1,.36,1) .3s forwards;
}

@keyframes aboutArtIn{
  to{
    opacity:1;
    transform:translateX(0);
  }
}
.about-approach-eyebrow{
  opacity:0;
  transform:translateY(-18px);
  animation:aboutApproachEyebrowIn 1s cubic-bezier(.22,1,.36,1) .05s forwards;
}

@keyframes aboutApproachEyebrowIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.about-approach-title{
  opacity:0;
  transform:translateX(42px);
  animation:aboutApproachTitleIn 1.15s cubic-bezier(.22,1,.36,1) .2s forwards;
}

@keyframes aboutApproachTitleIn{
  to{
    opacity:1;
    transform:translateX(0);
  }
}
.about-approach-copy{
  opacity:0;
  transform:translateY(26px);
  animation:aboutApproachCopyIn 1.1s cubic-bezier(.22,1,.36,1) .5s forwards;
}

@keyframes aboutApproachCopyIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.about-approach-copy-2{
  animation-delay:.75s;
}
.js-motion .about-approach-eyebrow:not(.visible){
  animation:none;
  opacity:0;
  transform:translateY(-18px);
}
.js-motion .about-approach-eyebrow.visible{
  animation:aboutApproachEyebrowIn 1s cubic-bezier(.22,1,.36,1) forwards;
}
.js-motion .about-approach-title:not(.visible){
  animation:none;
  opacity:0;
  transform:translateX(42px);
}
.js-motion .about-approach-title.visible{
  animation:aboutApproachTitleIn 1.15s cubic-bezier(.22,1,.36,1) .1s forwards;
}
.js-motion .about-approach-copy:not(.visible){
  animation:none;
  opacity:0;
  transform:translateY(26px);
}
.js-motion .about-approach-copy.visible{
  animation:aboutApproachCopyIn 1.1s cubic-bezier(.22,1,.36,1) .15s forwards;
}
.js-motion .about-approach-copy-2:not(.visible){
  animation:none;
  opacity:0;
  transform:translateY(26px);
}
.js-motion .about-approach-copy-2.visible{
  animation:aboutApproachCopyIn 1.1s cubic-bezier(.22,1,.36,1) .35s forwards;
}
.js-motion .about-approach-eyebrow.visible{
  animation:aboutApproachEyebrowIn 1.8s cubic-bezier(.16,1,.3,1) .15s forwards;
}

.js-motion .about-approach-title.visible{
  animation:aboutApproachTitleIn 2s cubic-bezier(.16,1,.3,1) .35s forwards;
}

.js-motion .about-approach-copy.visible{
  animation:aboutApproachCopyIn 1.9s cubic-bezier(.16,1,.3,1) .65s forwards;
}

.js-motion .about-approach-copy-2.visible{
  animation:aboutApproachCopyIn 1.9s cubic-bezier(.16,1,.3,1) 1s forwards;
}
.js-motion .about-approach-eyebrow{
  opacity:0;
  transform:translateY(-18px);
  animation:none;
}

.js-motion .about-approach-eyebrow.visible{
  opacity:1;
  transform:translateY(0);
  animation:aboutApproachEyebrowIn 1.8s cubic-bezier(.16,1,.3,1) .15s forwards;
}
.js-motion .about-values-title:not(.visible){
  opacity:0;
  transform:translateX(-42px);
}

.js-motion .about-values-title.visible{
  opacity:1;
  transform:translateX(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
}
.js-motion .about-value-1:not(.visible){
  opacity:0;
  transform:translateY(32px);
}

.js-motion .about-value-1.visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
}
.js-motion .about-value-2:not(.visible){
  opacity:0;
  transform:translateX(32px);
}

.js-motion .about-value-2.visible{
  opacity:1;
  transform:translateX(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
}
.js-motion .about-value-3:not(.visible){
  opacity:0;
  transform:translateY(32px);
}

.js-motion .about-value-3.visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
}
.js-motion .about-next-title:not(.visible){
  opacity:0;
  transform:translateX(42px);
}

.js-motion .about-next-title.visible{
  opacity:1;
  transform:translateX(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
}
.js-motion .about-next-title:not(.visible){
  opacity:0;
  transform:translateX(42px);
}

.js-motion .about-next-title.visible{
  opacity:1;
  transform:translateX(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
}
.js-motion .about-next-button:not(.visible){
  opacity:0;
  transform:translateY(22px);
}

.js-motion .about-next-button.visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
  transition-delay:.35s;
}
.js-motion .about-client-tile-motion{
  opacity:0;
  transform:translateY(28px);
}

.js-motion .about-client-tile-motion.about-client-tile-visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.4s cubic-bezier(.16,1,.3,1),transform 1.4s cubic-bezier(.16,1,.3,1);
}
.js-motion .about-client-tile-motion:nth-child(1){transition-delay:.1s}
.js-motion .about-client-tile-motion:nth-child(2){transition-delay:.3s}
.js-motion .about-client-tile-motion:nth-child(3){transition-delay:.5s}
.js-motion .about-client-tile-motion:nth-child(4){transition-delay:.7s}
.js-motion .about-client-tile-motion:nth-child(5){transition-delay:.9s}
.js-motion .about-client-tile-motion:nth-child(6){transition-delay:1.1s}
.js-motion .about-client-tile-motion:nth-child(7){transition-delay:1.3s}
.services-title-motion{
  opacity:0;
  transform:translateX(-42px);
  animation:servicesTitleIn 1.15s cubic-bezier(.22,1,.36,1) .15s forwards;
}

@keyframes servicesTitleIn{
  to{
    opacity:1;
    transform:translateX(0);
  }
}
.services-copy-motion{
  opacity:0;
  transform:translateY(26px);
  animation:servicesCopyIn 1.1s cubic-bezier(.22,1,.36,1) .45s forwards;
}

@keyframes servicesCopyIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.services-button-motion{
  opacity:0;
  transform:translateY(22px);
  animation:servicesButtonIn 1s cubic-bezier(.22,1,.36,1) .75s forwards;
}

@keyframes servicesButtonIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.services-eyebrow-motion{
  opacity:0;
  transform:translateY(-18px);
  animation:servicesEyebrowIn 1s cubic-bezier(.22,1,.36,1) .05s forwards;
}

@keyframes servicesEyebrowIn{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.js-motion .services-process-title:not(.visible){
  opacity:0;
  transform:translateX(-42px);
}

.js-motion .services-process-title.visible{
  opacity:1;
  transform:translateX(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
}
.js-motion .services-step-motion:not(.visible){
  opacity:0;
  transform:translateY(32px);
}

.js-motion .services-step-motion.visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.6s cubic-bezier(.16,1,.3,1),transform 1.6s cubic-bezier(.16,1,.3,1);
}

.js-motion .services-step-1.visible{transition-delay:.1s}
.js-motion .services-step-2.visible{transition-delay:.35s}
.js-motion .services-step-3.visible{transition-delay:.6s}
.js-motion .services-step-4.visible{transition-delay:.85s}


.contact-title-motion{
  opacity:0;
  transform:translateX(-42px);
  animation:contactTitleIn 1.15s cubic-bezier(.22,1,.36,1) .15s forwards;
}

@keyframes contactTitleIn{
  to{opacity:1;transform:translateX(0);}
}


.contact-copy-motion{
  opacity:0;
  transform:translateY(26px);
  animation:contactCopyIn 1.1s cubic-bezier(.22,1,.36,1) .45s forwards;
}

@keyframes contactCopyIn{
  to{opacity:1;transform:translateY(0);}
}


.contact-button-motion{
  opacity:0;
  transform:translateY(22px);
  animation:contactButtonIn 1s cubic-bezier(.22,1,.36,1) .75s forwards;
}

@keyframes contactButtonIn{
  to{opacity:1;transform:translateY(0);}
}


.js-motion .contact-conversation-title:not(.visible){
  opacity:0;
  transform:translateX(42px);
}

.js-motion .contact-conversation-title.visible{
  opacity:1;
  transform:translateX(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
}


.js-motion .contact-form-title:not(.visible){
  opacity:0;
  transform:translateX(-42px);
}

.js-motion .contact-form-title.visible{
  opacity:1;
  transform:translateX(0);
  transition:opacity 1.8s cubic-bezier(.16,1,.3,1),transform 1.8s cubic-bezier(.16,1,.3,1);
}


.js-motion .contact-card-motion:not(.visible){
  opacity:0;
  transform:translateY(32px);
}

.js-motion .contact-card-motion.visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.6s cubic-bezier(.16,1,.3,1),transform 1.6s cubic-bezier(.16,1,.3,1);
}


.js-motion .contact-card-1.visible{transition-delay:.1s}
.js-motion .contact-card-2.visible{transition-delay:.35s}
.js-motion .contact-card-3.visible{transition-delay:.6s}


.js-motion .contact-social-motion:not(.visible){
  opacity:0;
  transform:translateY(24px);
}

.js-motion .contact-social-motion.visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.6s cubic-bezier(.16,1,.3,1),transform 1.6s cubic-bezier(.16,1,.3,1);
  transition-delay:.85s;
}


.js-motion .contact-form-copy-motion:not(.visible){
  opacity:0;
  transform:translateY(24px);
}

.js-motion .contact-form-copy-motion.visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.4s cubic-bezier(.16,1,.3,1),transform 1.4s cubic-bezier(.16,1,.3,1);
  transition-delay:.25s;
}

.js-motion .contact-field-motion:not(.visible){
  opacity:0;
  transform:translateY(28px);
}

.js-motion .contact-field-motion.visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.3s cubic-bezier(.16,1,.3,1),transform 1.3s cubic-bezier(.16,1,.3,1);
}

.js-motion .contact-field-1.visible{transition-delay:.15s}
.js-motion .contact-field-2.visible{transition-delay:.3s}
.js-motion .contact-field-3.visible{transition-delay:.45s}
.js-motion .contact-field-4.visible{transition-delay:.6s}
.js-motion .contact-field-5.visible{transition-delay:.75s}
.js-motion .contact-field-6.visible{transition-delay:.9s}

.js-motion .contact-actions-motion:not(.visible){
  opacity:0;
  transform:translateY(24px);
}

.js-motion .contact-actions-motion.visible{
  opacity:1;
  transform:translateY(0);
  transition:opacity 1.3s cubic-bezier(.16,1,.3,1),transform 1.3s cubic-bezier(.16,1,.3,1);
  transition-delay:1.05s;
}


.about-title-motion{opacity:0;transform:translateX(-42px);animation:aboutTitleIn 1.15s cubic-bezier(.22,1,.36,1) .15s forwards;}
@keyframes aboutTitleIn{to{opacity:1;transform:translateX(0);}}
.about-copy-motion{opacity:0;transform:translateY(26px);animation:aboutCopyIn 1.1s cubic-bezier(.22,1,.36,1) .45s forwards;}
@keyframes aboutCopyIn{to{opacity:1;transform:translateY(0);}}
.about-button-motion{opacity:0;transform:translateY(22px);animation:aboutButtonIn 1s cubic-bezier(.22,1,.36,1) .75s forwards;}
@keyframes aboutButtonIn{to{opacity:1;transform:translateY(0);}}
.about-art-motion{opacity:0;transform:translateX(55px);animation:aboutArtIn 1.35s cubic-bezier(.22,1,.36,1) .3s forwards;}
@keyframes aboutArtIn{to{opacity:1;transform:translateX(0);}}

/* About — Approach reveal motion */
.about-story .about-approach-title.reveal,
.about-story .about-approach-copy.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.8s ease,
    transform 0.8s ease;
}

.about-story .about-approach-title.reveal.visible,
.about-story .about-approach-copy.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.about-story .about-approach-copy-2.reveal {
  transition-delay: 0.12s;
}

/* Work — page motion */
.work-intro .eyebrow.reveal,
.work-intro h1.reveal,
.work-intro .intro-bottom p.reveal,
.work-intro .work-count.reveal {
  transition:
    opacity 0.9s cubic-bezier(.22,1,.36,1),
    transform 0.9s cubic-bezier(.22,1,.36,1),
    filter 0.9s cubic-bezier(.22,1,.36,1);
}

.js-motion .work-intro .eyebrow.reveal:not(.visible),
.js-motion .work-intro h1.reveal:not(.visible),
.js-motion .work-intro .intro-bottom p.reveal:not(.visible),
.js-motion .work-intro .work-count.reveal:not(.visible) {
  opacity: 0;
  transform: translateY(30px);
  filter: blur(3px);
}

.js-motion .work-intro .eyebrow.reveal.visible,
.js-motion .work-intro h1.reveal.visible,
.js-motion .work-intro .intro-bottom p.reveal.visible,
.js-motion .work-intro .work-count.reveal.visible {
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
}

.work-intro h1.reveal {
  transition-delay: 0.08s;
}

.work-intro .intro-bottom p.reveal {
  transition-delay: 0.16s;
}

.work-intro .work-count.reveal {
  transition-delay: 0.24s;
}

/* Work — client cards */
.js-motion .work-client-tile-motion:not(.visible) {
  opacity: 0;
  transform: translateY(34px);
  filter: blur(2px);
}

.js-motion .work-client-tile-motion.visible {
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
  transition:
    opacity 0.75s cubic-bezier(.22,1,.36,1),
    transform 0.75s cubic-bezier(.22,1,.36,1),
    filter 0.75s cubic-bezier(.22,1,.36,1);
}

.js-motion .work-client-tile-motion:nth-child(1) { transition-delay: 0.04s; }
.js-motion .work-client-tile-motion:nth-child(2) { transition-delay: 0.10s; }
.js-motion .work-client-tile-motion:nth-child(3) { transition-delay: 0.16s; }
.js-motion .work-client-tile-motion:nth-child(4) { transition-delay: 0.22s; }
.js-motion .work-client-tile-motion:nth-child(5) { transition-delay: 0.28s; }
.js-motion .work-client-tile-motion:nth-child(6) { transition-delay: 0.34s; }
.js-motion .work-client-tile-motion:nth-child(7) { transition-delay: 0.40s; }


/* Work — showcase reveal motion */
.js-motion .work-showcase .showcase-heading,
.js-motion .work-showcase .showcase-intro,
.js-motion .work-showcase .deliverable-tags,
.js-motion .work-showcase .work-sample {
  opacity: 0;
  transform: translateY(28px);
  filter: blur(3px);
}

.js-motion .work-showcase.showcase-motion-visible .showcase-heading,
.js-motion .work-showcase.showcase-motion-visible .showcase-intro,
.js-motion .work-showcase.showcase-motion-visible .deliverable-tags,
.js-motion .work-showcase.showcase-motion-visible .work-sample {
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
  transition:
    opacity 0.8s cubic-bezier(.22,1,.36,1),
    transform 0.8s cubic-bezier(.22,1,.36,1),
    filter 0.8s cubic-bezier(.22,1,.36,1);
}

.js-motion .work-showcase.showcase-motion-visible .showcase-intro {
  transition-delay: 0.10s;
}

.js-motion .work-showcase.showcase-motion-visible .deliverable-tags {
  transition-delay: 0.18s;
}

.js-motion .work-showcase.showcase-motion-visible .work-sample:nth-child(1) {
  transition-delay: 0.24s;
}

.js-motion .work-showcase.showcase-motion-visible .work-sample:nth-child(2) {
  transition-delay: 0.32s;
}

.js-motion .work-showcase.showcase-motion-visible .work-sample:nth-child(3) {
  transition-delay: 0.40s;
}

