:root{--gspb12b12-ink:#050505;--gspb12b12-accent:#70e7d0;--gspb12b12-red:#f53045}
.gspb12-elementor-root{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;gap:0!important;overflow:visible!important;background:#fff}
.gspb12-elementor-root>.elementor-element{width:100%!important;max-width:none!important;margin:0!important}
.gspb12-elementor-root *{box-sizing:border-box}
.gspb12-elementor-root a{text-decoration:none}

/* Navigation */
.gspb12-nav{width:100%;background:#fff;position:relative;z-index:50}
.gspb12-nav__inner{height:54px;max-width:560px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:86px;padding:0 18px}
.gspb12-nav__link{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:900;line-height:1;color:#111;letter-spacing:.01em;white-space:nowrap}
.gspb12-nav__link:hover{opacity:.55}

/* Hero */
.gspb12-hero{width:100%;background:#fff;overflow:hidden}
.gspb12-hero__stage{position:relative;width:min(1500px,100%);min-height:610px;margin:0 auto;overflow:hidden;background:#fff;isolation:isolate}
.gspb12-hero__grid{position:absolute;z-index:0;left:24px;right:24px;top:0;height:440px;background-image:linear-gradient(#ececec 1px,transparent 1px),linear-gradient(90deg,#ececec 1px,transparent 1px);background-size:32px 32px;border:1px solid #f1f1f1}
.gspb12-hero__mint{position:absolute;z-index:1;left:24px;top:68px;width:330px;height:360px;background:var(--gspb12b12-accent);clip-path:polygon(0 0,48% 0,48% 24%,66% 24%,66% 48%,100% 48%,100% 100%,0 100%)}
.gspb12-hero__gray{position:absolute;z-index:1;right:58px;top:105px;width:360px;height:245px;background:var(--gspb12b12-gray);clip-path:polygon(0 0,55% 0,55% 16%,72% 16%,72% 40%,88% 40%,88% 67%,100% 67%,100% 100%,0 100%)}
.gspb12-hero__title{position:absolute;z-index:2;left:50%;top:69px;transform:translateX(-56%);width:1000px;margin:0;color:var(--gspb12b12-ink);font-family:Arial,Helvetica,sans-serif;font-size:clamp(88px,8.3vw,136px);font-weight:950;line-height:.78;letter-spacing:-.075em;text-align:center;text-transform:uppercase;pointer-events:none}
.gspb12-hero__title span{display:block;white-space:nowrap}
.gspb12-hero__person{position:absolute;z-index:4;right:15%;bottom:0;width:min(445px,34vw);height:auto;display:block;object-fit:contain;filter:drop-shadow(0 3px 0 rgba(0,0,0,.08))}
.gspb12-speech{position:absolute;z-index:6;left:90px;top:72px;min-width:175px;max-width:230px;padding:14px 16px;background:#fff;border:2px solid #111;border-radius:16px;color:#111;font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:900;line-height:1.15;box-shadow:0 2px 0 #111;white-space:normal}
.gspb12-speech:after{content:"";position:absolute;left:88px;bottom:-17px;width:21px;height:21px;background:#fff;border-right:2px solid #111;border-bottom:2px solid #111;transform:rotate(45deg)}
.gspb12-hey{position:absolute;z-index:7;right:30.5%;top:34px;padding:8px 14px;background:#fff;border:2px solid #111;border-radius:999px;color:#111;font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:900;line-height:1;box-shadow:0 2px 0 #111}
.gspb12-hey:after{content:"";position:absolute;right:6px;bottom:-8px;width:12px;height:12px;background:#fff;border-right:2px solid #111;border-bottom:2px solid #111;transform:rotate(35deg)}
.gspb12-popup{position:absolute;z-index:8;left:22%;bottom:16px;width:345px;border:3px solid #111;background:#f9f1e9;box-shadow:5px 6px 0 #111;font-family:Arial,Helvetica,sans-serif;color:#111}
.gspb12-popup__bar{height:38px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;background:var(--gspb12b12-popup);border-bottom:2px solid #111;font-size:16px}
.gspb12-popup__bar span{font-size:22px;font-weight:900;letter-spacing:2px}
.gspb12-popup__content{padding:12px 16px 13px;text-align:center}
.gspb12-popup__body{margin-bottom:9px;font-size:14px;font-weight:700;text-align:left}
.gspb12-popup__progress{height:22px;display:grid;grid-template-columns:repeat(12,1fr);gap:0;border:2px solid #111;background:#fff;margin-bottom:10px}
.gspb12-popup__progress span{border-right:1px solid #111;background:var(--gspb12b12-popup)}
.gspb12-popup__progress span:nth-child(n+7){background:#fff}
.gspb12-popup.is-complete .gspb12-popup__progress span{background:var(--gspb12b12-popup)}
.gspb12-popup__button{appearance:none;border:2px solid #111;background:#fff;padding:4px 22px;color:#111;font:900 14px/1 Arial,Helvetica,sans-serif;box-shadow:2px 2px 0 #111;cursor:pointer}
.gspb12-popup__button:active{transform:translate(2px,2px);box-shadow:none}

/* Intro */
.gspb12-intro{width:min(860px,calc(100% - 32px));margin:18px auto 0;text-align:center;color:#111;font-family:Arial,Helvetica,sans-serif}
.gspb12-intro__name{margin:0 0 6px;font-size:34px;line-height:1;font-weight:950;letter-spacing:-.025em}
.gspb12-intro__role{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;font-size:31px;line-height:1;font-weight:950}
.gspb12-intro__prefix{padding:0 2px}
.gspb12-highlight{display:inline-block;padding:2px 5px 3px;background:var(--gspb12b12-accent);border:1.5px dotted #111}
.gspb12-intro__tagline{margin-top:10px;font-size:27px;line-height:.98;font-weight:950;letter-spacing:-.015em}
.gspb12-intro__tagline p{margin:0}
.gspb12-intro__star{margin-top:10px;color:var(--gspb12b12-red);font-size:28px;line-height:1}

/* Shared heading */
.gspb12-section-heading{margin:0;text-align:center;color:#111;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.2;font-weight:950}

/* Services */
.gspb12-services{width:min(1220px,calc(100% - 38px));margin:20px auto 0;padding:0 0 30px}
.gspb12-services__grid{margin-top:16px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;align-items:stretch}
.gspb12-service-card{min-width:0;background:#fdf7f2;border:2px solid #111;box-shadow:4px 5px 0 #111;transition:transform .2s ease;transform-origin:center}
.gspb12-service-card:nth-child(1){transform:rotate(-.7deg)}
.gspb12-service-card:nth-child(2){transform:rotate(.35deg)}
.gspb12-service-card:nth-child(3){transform:rotate(-.25deg)}
.gspb12-service-card:nth-child(4){transform:rotate(.55deg)}
.gspb12-service-card:nth-child(5){transform:rotate(-.4deg)}
.gspb12-service-card:hover{transform:translateY(-5px) rotate(0deg)}
.gspb12-service-card__bar{height:35px;padding:0 9px;display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #111;font:900 13px/1 Arial,Helvetica,sans-serif}
.gspb12-service-card__bar span{font-size:15px;letter-spacing:1px}
.gspb12-service-card__body{min-height:155px;padding:11px 12px 12px;display:flex;flex-direction:column;align-items:center}
.gspb12-service-card__icon{width:72px;height:60px;object-fit:contain;margin:0 auto 5px;display:block}
.gspb12-service-card__body p{width:100%;margin:auto 0 0;color:#111;font:500 14px/1.16 Arial,Helvetica,sans-serif;text-align:left}

/* Projects */
.gspb12-projects{width:100%;margin:0 auto;padding:18px 24px 34px;background:#fffaf5}
.gspb12-projects__grid{width:min(1060px,100%);margin:18px auto 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:34px;align-items:start}
.gspb12-folder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#111;transition:transform .2s ease}
.gspb12-folder:hover{transform:translateY(-6px) rotate(-1deg)}
.gspb12-folder img{width:98px;height:77px;object-fit:contain;display:block}
.gspb12-folder span{font-family:"Courier New",monospace;font-size:13px;font-weight:700;line-height:1.2;text-align:center}
.gspb12-projects--work{padding-top:20px;padding-bottom:70px;background:#fff}
.gspb12-projects--work .gspb12-projects__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:1050px}
.gspb12-projects--work .gspb12-folder{padding:28px 18px;background:#fffaf5;border:2px solid #111;box-shadow:5px 5px 0 #111}
.gspb12-projects--work .gspb12-folder img{width:130px;height:100px}
.gspb12-projects--work .gspb12-folder span{font-family:Arial,Helvetica,sans-serif;font-size:18px;font-weight:900}

/* Footer */
.gspb12-footer{min-height:54px;padding:8px 16px;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-family:Arial,Helvetica,sans-serif}
.gspb12-footer a{color:#49aaf0;font-size:12px;font-weight:900}
.gspb12-footer small{color:#fff;font-size:8px}

/* Inner pages */
.gspb12-page-title{width:min(1050px,calc(100% - 32px));margin:45px auto 24px;text-align:center;font-family:Arial,Helvetica,sans-serif}
.gspb12-page-title h1{margin:0;color:#050505;font-size:clamp(58px,8vw,120px);font-weight:950;line-height:.86;letter-spacing:-.065em;text-transform:uppercase}
.gspb12-page-title p{margin:15px auto 0;max-width:700px;color:#555;font-size:16px;line-height:1.45}
.gspb12-about{padding:35px 18px 80px;background:#fff}
.gspb12-about__card{width:min(780px,100%);margin:0 auto;padding:42px;background:#fffaf5;border:2px solid #111;box-shadow:8px 8px 0 #111;font-family:Arial,Helvetica,sans-serif;text-align:center}
.gspb12-about__card h1{margin:0 0 20px;font-size:clamp(40px,6vw,76px);line-height:.9;font-weight:950;letter-spacing:-.05em}
.gspb12-about__body{font-size:19px;line-height:1.55}
.gspb12-button{display:inline-block;margin-top:18px;padding:12px 22px;background:#111;color:#fff!important;border:2px solid #111;font-weight:900}

/* Media inserter */
.gspb12-media-section{width:min(1150px,calc(100% - 32px));margin:20px auto 70px;padding:30px;background:var(--gspb12b12-media-bg);border-top:10px solid var(--gspb12b12-media-accent);font-family:Arial,Helvetica,sans-serif}
.gspb12-media-section__head{text-align:center;margin-bottom:25px}
.gspb12-media-section__head h2{margin:0;font-size:36px;line-height:1;font-weight:950}
.gspb12-media-section__head p{margin:8px 0 0;color:#666;font-size:14px}
.gspb12-media-grid{display:grid;gap:18px;align-items:start}
.gspb12-media-grid--1{grid-template-columns:1fr}.gspb12-media-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.gspb12-media-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.gspb12-media-item{margin:0;background:#fff}
.gspb12-media-item img,.gspb12-media-item video,.gspb12-media-item iframe{display:block;width:100%;height:auto;border:0;object-fit:contain;background:#000}
.gspb12-media-item iframe{aspect-ratio:16/9}
.gspb12-media-item figcaption{padding:8px 10px;color:#444;font-size:12px;text-align:center}

/* Elementor editor */
.elementor-editor-active .gspb12-hero__grid,.elementor-editor-active .gspb12-hero__mint,.elementor-editor-active .gspb12-hero__gray{pointer-events:none}
.elementor-editor-active .gspb12-hero__stage{outline:1px dashed rgba(0,0,0,.15)}

@media(max-width:1180px){
  .gspb12-hero__title{transform:translateX(-54%);font-size:clamp(78px,9vw,112px);width:850px}
  .gspb12-hero__person{right:9%;width:min(420px,38vw)}
  .gspb12-hey{right:28%}
  .gspb12-popup{left:12%}
  .gspb12-services__grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;margin-left:auto;margin-right:auto}
  .gspb12-service-card:nth-child(n){transform:none}
}

@media(max-width:820px){
  .gspb12-nav__inner{gap:45px}
  .gspb12-hero__stage{min-height:720px!important}
  .gspb12-hero__grid{left:12px;right:12px;height:500px;background-size:24px 24px}
  .gspb12-hero__title{top:88px;left:50%;transform:translateX(-50%);width:96%;font-size:clamp(56px,13vw,88px);line-height:.83;letter-spacing:-.07em}
  .gspb12-hero__person{right:-24px;bottom:120px;width:390px;max-width:72vw}
  .gspb12-hero__mint{left:12px;top:190px;width:250px;height:320px}
  .gspb12-hero__gray{right:-10px;top:220px;width:260px;height:220px}
  .gspb12-speech{left:24px;top:26px;font-size:13px;min-width:155px;padding:11px 13px}
  .gspb12-hey{right:26px;top:205px;font-size:12px}
  .gspb12-popup{left:24px;right:24px;bottom:24px;width:auto}
  .gspb12-intro{margin-top:10px}
  .gspb12-intro__name{font-size:29px}.gspb12-intro__role{font-size:24px}.gspb12-intro__tagline{font-size:22px}
  .gspb12-services__grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:560px}
  .gspb12-projects__grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:650px}
  .gspb12-projects--work .gspb12-projects__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:520px){
  .gspb12-nav__inner{height:52px;gap:0;justify-content:space-between;padding:0 24px}
  .gspb12-nav__link{font-size:11px!important}
  .gspb12-hero__stage{min-height:720px!important}
  .gspb12-hero__title{top:86px;font-size:clamp(49px,14.8vw,70px);line-height:.86}
  .gspb12-hero__title span{white-space:normal}
  .gspb12-hero__person{right:-68px;bottom:125px;width:385px;max-width:none}
  .gspb12-hero__mint{left:-15px;top:220px;width:190px;height:285px}
  .gspb12-hero__gray{right:-50px;top:255px;width:220px;height:180px}
  .gspb12-speech{left:16px;top:20px;max-width:165px;font-size:12px}
  .gspb12-hey{right:18px;top:230px}
  .gspb12-popup{left:14px;right:14px;bottom:17px;box-shadow:4px 5px 0 #111}
  .gspb12-popup__bar{height:34px;font-size:14px}.gspb12-popup__content{padding:10px 12px}.gspb12-popup__body{font-size:12px}
  .gspb12-intro{width:calc(100% - 24px);margin-top:14px}
  .gspb12-intro__name{font-size:27px}.gspb12-intro__role{gap:5px;font-size:20px}.gspb12-intro__tagline{font-size:20px;line-height:1.04}
  .gspb12-services{width:calc(100% - 28px);margin-top:18px}
  .gspb12-services__grid{grid-template-columns:1fr;gap:18px;max-width:360px}
  .gspb12-service-card__body{min-height:140px}.gspb12-service-card__body p{font-size:14px}
  .gspb12-projects{padding-left:14px;padding-right:14px}
  .gspb12-projects__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px;max-width:380px}
  .gspb12-projects__grid .gspb12-folder:last-child:nth-child(odd){grid-column:1/-1}
  .gspb12-folder img{width:92px}.gspb12-folder span{font-size:12px}
  .gspb12-projects--work .gspb12-projects__grid{grid-template-columns:1fr;max-width:340px}
  .gspb12-page-title{margin-top:30px}.gspb12-page-title h1{font-size:52px}.gspb12-page-title p{font-size:14px}
  .gspb12-about__card{padding:28px 20px}.gspb12-about__body{font-size:16px}
  .gspb12-media-section{width:calc(100% - 20px);padding:16px;margin-bottom:35px}.gspb12-media-grid--2,.gspb12-media-grid--3{grid-template-columns:1fr}
}
