@font-face{font-family:BebasRef;src:url('../theme/fonts/BebasNeue-webfont.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
:root{--ink:#1c1f26;--muted:#868991;--paper:#fff;--soft:#f0f2f5;--accent:#b0b825}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:14px/1.65 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:var(--accent);text-decoration:none;transition:.25s}a:hover{color:#697017}button,input,textarea,select{font:inherit}button{cursor:pointer}.container{width:960px;max-width:calc(100% - 48px);margin:0 auto}.kutcher-body h1,.kutcher-body h2,.kutcher-body h3{font-family:BebasRef,Impact,sans-serif;font-weight:400;text-transform:uppercase;margin:0;line-height:1}.kutcher-body h2{font-size:82px}.kutcher-body h3{font-size:23px}
.site-topbar{display:none}.reference-nav{height:50px;margin-top:-50px;background:url('../theme/nav-bg.webp') repeat;position:sticky;top:0;z-index:90;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(0,0,0,.35);transition:box-shadow .25s ease,background-color .25s ease}.reference-nav.scrolled{box-shadow:0 8px 24px rgba(0,0,0,.22)}.nav-inner{width:960px;max-width:calc(100% - 48px);height:50px;margin:auto;display:flex;align-items:center;justify-content:space-between}.nav-links{list-style:none;margin:0;padding:0;display:flex;gap:18px}.nav-links a{font-family:Arial,sans-serif;font-size:12px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.3px}.nav-links a:hover,.nav-links a.active{color:var(--accent)}.nav-social{display:flex;gap:7px}.nav-social a{display:flex;width:21px;height:21px;border-radius:50%;background:#2b3441;color:#fff;align-items:center;justify-content:center;font-size:9px;font-weight:700;text-transform:uppercase}.nav-social a:hover{background:var(--accent)}.mobile-menu,.mobile-panel{display:none}
.hero-ref{height:100vh;min-height:620px;position:relative;overflow:hidden;background:#12161d;margin-bottom:0}.hero-slides,.hero-slide,.hero-pattern{position:absolute;inset:0}.hero-slide{inset:-9%;background-size:cover;background-position:center;opacity:0;--hero-y:0px;transform:translate3d(0,var(--hero-y),0) scale(1.035);will-change:transform,opacity;transition:opacity 1.1s ease}.hero-slide.active{opacity:1;transform:translate3d(0,var(--hero-y),0) scale(1.035)}.hero-slide.active{opacity:1;transform:scale(1)}.hero-pattern{background-image:url('../theme/pattern.webp');opacity:.18}.hero-ref:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06) 20%,rgba(0,0,0,.42) 100%)}.hero-content-wrap{position:relative;z-index:3;height:100%;width:960px;max-width:calc(100% - 48px);margin:auto;display:flex;flex-direction:column;justify-content:space-between;padding:40px 0 105px}.hero-logo-text{color:#fff;font-family:BebasRef,sans-serif;font-size:36px;letter-spacing:1px}.hero-logo-text img{max-width:280px;max-height:70px;object-fit:contain}.hero-caption{display:grid;grid-template-columns:1fr 170px;gap:20px;min-height:180px}.hero-line{height:1px;background:rgba(255,255,255,.95);grid-column:1/-1;margin-bottom:20px}.hero-copy h1{font-size:88px;color:#fff;max-width:760px}.hero-copy p{color:#fff;max-width:680px;margin:16px 0 0;font-size:14px;font-weight:600}.hero-controls{display:flex;align-items:flex-start;justify-content:flex-end;gap:10px;padding-top:25px}.hero-controls button{border:0;width:35px;height:35px;border-radius:50%;background:rgba(20,25,31,.7);color:#fff;font-size:26px;line-height:30px}.hero-controls button:hover{background:var(--accent)}
.page-block{padding:70px 0 85px;background:#fff}.lead-text{font-size:19px;line-height:1.55;color:#454a54}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:46px}.about-card{padding-top:5px}.about-rule{border-top:1px solid #dfe2e6;margin-bottom:26px}.about-card h3{font-family:Arial,sans-serif;font-weight:700;font-size:14px;letter-spacing:.2px}.about-card p{font-size:13px;color:#666b74}.services-block{padding-bottom:95px}.services-grid{margin-top:10px}.service-card{text-align:center}.service-card h3{font-family:Arial,sans-serif;font-weight:700;font-size:16px;margin-top:42px}.service-icon{width:160px;height:160px;border-radius:50%;background:var(--soft);margin:24px auto;display:flex;align-items:center;justify-content:center}.service-icon img{width:76px;height:76px;object-fit:contain}.service-card p{font-size:13px;line-height:1.6;color:#646a73;margin:0 auto;max-width:285px}
.parallax-band{position:relative;height:440px;display:flex;align-items:center;overflow:hidden;color:#fff}.parallax-bg{position:absolute;inset:-18%;background-position:50% 50%;background-size:cover;transform:translate3d(0,0,0) scale(1.14);will-change:transform}.parallax-pattern{position:absolute;inset:0;background:url('../theme/pattern.webp') repeat;opacity:.42;z-index:1}.parallax-band:after{content:"";position:absolute;inset:0;background:rgba(28,31,38,.44)}.parallax-inner{position:relative;z-index:2;text-align:center;max-width:820px}.parallax-inner p{font-family:Arial,sans-serif;font-size:27px;line-height:1.4;font-weight:700;margin:0}.parallax-inner span{display:block;font-family:BebasRef,sans-serif;font-size:26px;margin-top:24px;color:#fff}.twitter-style{text-align:left;max-width:820px}.twitter-style small{font-family:BebasRef,sans-serif;font-size:21px}.twitter-style p{font-size:25px;max-width:700px}.twitter-style a{display:inline-block;margin-top:23px;font-weight:700;font-size:11px;color:#fff}.clients-band{background:#1c1f26;color:#fff;padding:70px 0}.clients-band h2{text-align:center;font-size:55px}.client-list{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:24px}.client-list span{font-size:13px;font-weight:700;letter-spacing:1px;color:#ced0d4;padding:12px 16px;border:1px solid rgba(255,255,255,.15)}
.portfolio-block{padding-bottom:95px}.portfolio-filter{display:flex;gap:16px;align-items:center;margin:30px 0 28px;padding-bottom:22px;border-bottom:1px solid #eceef0;flex-wrap:wrap}.portfolio-filter button{border:0;background:transparent;padding:0;color:#747984;font-size:11px;font-weight:700;text-transform:uppercase}.portfolio-filter button:hover,.portfolio-filter button.selected{color:var(--accent)}.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 22px}.portfolio-item.is-hidden{display:none}.portfolio-image{position:relative;overflow:hidden}.portfolio-image img{width:100%;aspect-ratio:1/.98;object-fit:cover;transition:transform .45s ease}.portfolio-overlay{position:absolute;inset:0;background:rgba(176,184,37,.88);display:flex;align-items:center;justify-content:center;gap:10px;opacity:0;transition:.3s;color:#fff}.portfolio-overlay b{font-size:12px}.portfolio-overlay i{font-style:normal;font-size:20px}.portfolio-image:hover img{transform:scale(1.05)}.portfolio-image:hover .portfolio-overlay{opacity:1}.project-title{font-family:Arial,sans-serif;font-weight:700;font-size:12px;text-transform:uppercase;margin:9px 0 0;color:#20242b}.project-description{font-size:10px;text-transform:uppercase;color:#868991;font-weight:700;margin:2px 0 0}
.contact-ref{position:relative;min-height:720px;overflow:hidden;color:#fff;background:#1c1f26}.contact-bg{position:absolute;inset:-12%;background:url('../theme/contacts.webp') center/cover no-repeat;transform:translate3d(0,0,0) scale(1.08);will-change:transform}.contact-overlay{position:absolute;inset:0;background:rgba(28,31,38,.56) url('../theme/contact-bg.webp') repeat}.contact-ref .container{position:relative;z-index:2;display:flex;justify-content:center}.contact-card{width:100%;max-width:960px;margin:110px 0 145px;padding:46px 25px 110px;background:rgba(14,17,22,.62);text-align:center;position:relative}.contact-tabs span{display:inline-block;padding:5px 16px;background:#1c1f26;border-radius:20px;font-size:10px;font-weight:700}.contact-card h2{font-size:72px;color:#fff;margin-top:26px}.contact-address{color:#9da1a8;font-size:20px}.contact-lines{width:76%;margin:15px auto 28px;border-top:1px solid #fff;border-bottom:1px solid #fff;padding:24px 10px;display:flex;flex-wrap:wrap;justify-content:center;gap:24px;font-size:27px;font-weight:700;text-transform:uppercase}.contact-lines a{color:#fff}.contact-copy{color:#b7bac0;max-width:680px;margin:0 auto 28px}.contact-button{display:inline-flex;align-items:center;gap:12px;padding:12px 20px;background:var(--accent);color:#1c1f26;font-size:11px;font-weight:800;text-transform:uppercase}.contact-button:hover{background:#d1d83a;color:#1c1f26}
.site-footer{background:#15181e;color:#c5c8ce;padding:35px 0 0}.footer-grid{width:960px;max-width:calc(100% - 48px);margin:auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;padding-bottom:28px}.footer-grid strong{display:block;color:#fff;font-family:BebasRef,sans-serif;font-size:29px}.footer-grid span,.footer-grid a{display:block;font-size:11px;margin-top:3px;color:#a7abb2}.footer-grid a:hover{color:var(--accent)}.footer-social{display:flex;gap:12px;justify-content:flex-end}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:20px max(24px,calc((100% - 960px)/2));display:flex;justify-content:space-between;gap:20px;font-size:10px;text-transform:uppercase;color:#8d929a}
.project-hero{min-height:560px;background-position:50% var(--hero-bg-y,50%);background-size:cover;position:relative;color:#fff;display:flex;align-items:flex-end;--hero-bg-y:50%;will-change:background-position}.project-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 35%,rgba(0,0,0,.58) 100%)}.project-hero .hero-pattern{z-index:1;opacity:.14}.project-hero .container{position:relative;z-index:2;padding:0 0 65px}.project-hero-copy span{font-size:11px;font-weight:800;letter-spacing:.8px}.project-hero-copy h1{font-size:92px;margin:8px 0 14px}.project-hero-copy p{max-width:720px;font-size:15px}.project-intro{padding-top:60px}.project-gallery{background:#f6f7f8}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery-thumb{border:0;padding:0;position:relative;background:transparent;overflow:hidden}.gallery-thumb img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:.4s}.gallery-thumb.wide{grid-column:span 2}.gallery-thumb.wide img{aspect-ratio:2/1}.gallery-thumb span{position:absolute;left:12px;bottom:11px;color:#fff;font-size:10px;background:rgba(0,0,0,.45);padding:4px 6px}.gallery-thumb:hover img{transform:scale(1.03)}.next-project{background:#fff;padding:75px 0}.next-project span{display:block;color:#868991;font-size:10px;font-weight:700}.next-project a{display:flex;justify-content:space-between;align-items:center;color:#1c1f26;font-family:BebasRef,sans-serif;font-size:64px}.next-project a:hover{color:var(--accent)}.next-project i{font-style:normal;font-family:Arial;font-size:42px}
.contact-page-hero{min-height:600px}.contact-page{padding-top:80px}.contact-two{display:grid;grid-template-columns:1fr 1fr;gap:65px}.contact-two h2{font-size:80px}.contact-details{margin-top:35px;display:grid;gap:10px}.contact-details a,.contact-details p{font-size:20px;color:#1c1f26}.reference-form{display:grid;gap:22px}.reference-form label{display:grid;gap:8px;font-size:10px;text-transform:uppercase;font-weight:700}.reference-form input,.reference-form textarea{border:0;border-bottom:1px solid #cfd2d8;background:transparent;padding:10px 0;color:#1c1f26;outline:none;resize:vertical}.reference-form input:focus,.reference-form textarea:focus{border-color:var(--accent)}.reference-form button{justify-self:start;border:0;background:var(--accent);padding:12px 18px;font-size:11px;font-weight:800;text-transform:uppercase}.notice{padding:12px 15px;margin-bottom:18px;font-size:11px;font-weight:700}.notice.success{background:#e8f1d2;color:#586500}.notice.error{background:#f7dddd;color:#8c3030}.error-block{min-height:60vh;display:flex;align-items:center}
.lightbox{position:fixed;inset:0;background:rgba(8,10,13,.94);z-index:200;display:none;align-items:center;justify-content:center}.lightbox.open{display:flex}.lightbox figure{margin:0;max-width:90vw;max-height:88vh}.lightbox img{max-width:90vw;max-height:82vh;object-fit:contain}.lightbox figcaption{text-align:center;color:#fff;font-size:11px;margin-top:8px}.lb-close,.lb-prev,.lb-next{position:absolute;border:0;background:none;color:#fff;font-size:45px;z-index:2}.lb-close{right:24px;top:14px}.lb-prev{left:20px}.lb-next{right:20px}
@media(max-width:980px){.container,.nav-inner,.hero-content-wrap,.footer-grid{width:auto;max-width:calc(100% - 40px)}.hero-copy h1{font-size:73px}.portfolio-grid{grid-template-columns:repeat(3,1fr)}.contact-card h2,.project-hero-copy h1{font-size:74px}}
@media(max-width:760px){.reference-nav{display:none}.site-topbar{display:block;height:58px;position:fixed;top:0;left:0;right:0;z-index:120;background:rgba(20,23,29,.92)}.topbar-inner{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 18px}.brand{color:#fff;font-family:BebasRef,sans-serif;font-size:28px}.brand img{max-width:150px;max-height:42px}.top-actions{display:flex;align-items:center;gap:12px}.top-actions>a{font-size:10px;font-weight:800;color:#fff}.mobile-menu{display:flex;flex-direction:column;gap:4px;background:none;border:0;padding:8px}.mobile-menu span{width:20px;height:1px;background:#fff;display:block}.mobile-panel{display:none;position:fixed;inset:0;background:#15181e;z-index:130;overflow:auto}.mobile-panel.open{display:block}.mobile-panel-inner{padding:30px 24px}.mobile-close{border:0;background:none;color:#fff;font-size:38px;float:right}.mobile-panel a{display:block;color:#fff;font-family:BebasRef,sans-serif;font-size:48px;padding:8px 0}.mobile-panel a.sub{font-family:Arial;font-size:12px;color:#aeb1b8}.hero-ref{min-height:680px;height:100svh}.hero-content-wrap{padding:82px 0 62px}.hero-caption{grid-template-columns:1fr}.hero-copy h1{font-size:50px}.hero-copy p{font-size:13px;max-width:100%}.hero-controls{justify-content:flex-start;padding-top:8px}.page-block{padding:53px 0 62px}.kutcher-body h2{font-size:58px}.lead-text{font-size:16px}.three-grid,.contact-two{grid-template-columns:1fr;gap:32px}.services-grid{margin-top:20px}.parallax-band{height:340px}.parallax-inner p,.twitter-style p{font-size:20px}.clients-band{padding:52px 0}.clients-band h2{font-size:47px}.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:28px 13px}.portfolio-filter{gap:12px}.contact-ref{min-height:640px}.contact-card{margin:58px 0 95px;padding:34px 14px 85px}.contact-card h2{font-size:48px}.contact-lines{width:94%;font-size:19px;flex-direction:column;gap:5px}.footer-grid{grid-template-columns:1fr;gap:18px}.footer-social{justify-content:flex-start}.footer-bottom{flex-direction:column;align-items:flex-start;padding:18px 20px}.project-hero{min-height:520px}.project-hero-copy h1{font-size:56px}.hero-slide{inset:-12%;}.gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.gallery-thumb.wide{grid-column:span 2}.next-project a{font-size:46px}.contact-page-hero{min-height:520px}}
@media(max-width:480px){.portfolio-grid{grid-template-columns:1fr}.portfolio-image img{aspect-ratio:1/1.05}.hero-logo-text{font-size:30px}.contact-card h2{font-size:42px}.gallery-grid{grid-template-columns:1fr}.gallery-thumb.wide{grid-column:auto}.gallery-thumb.wide img{aspect-ratio:1/1}.next-project a{font-size:39px}}

/* TRUE WINDOW PARALLAX: the photographs stay fixed in the viewport while the page content scrolls. */
@media (min-width: 761px) {
  .hero-slide {
    transform: none !important;
    will-change: opacity;
    background-attachment: fixed !important;
    background-position: center center !important;
  }

  .parallax-bg {
    transform: none !important;
    will-change: auto;
    background-attachment: fixed !important;
    background-position: center center !important;
    background-size: cover !important;
  }

  .contact-bg {
    transform: none !important;
    will-change: auto;
    background-attachment: fixed !important;
    background-position: center center !important;
    background-size: cover !important;
  }

  .project-hero,
  .contact-page-hero {
    background-attachment: fixed !important;
    background-position: center center !important;
    background-size: cover !important;
    will-change: auto;
  }
}

@media (max-width: 760px) {
  .hero-slide,
  .parallax-bg,
  .contact-bg,
  .project-hero,
  .contact-page-hero {
    background-attachment: scroll !important;
  }
}
