
html.smooth-scroll{scroll-behavior:smooth;}
html,body{margin:0;padding:0;background:#FAF8F4;font-family:'Montserrat',sans-serif;}
a{color:#1A1A1A;text-decoration:none;}
a:hover{color:#C4271E;}
*{box-sizing:border-box;}
#top,#problem,#pod,#process,#services,#work,#testimonials,#faq{scroll-margin-top:80px;}
.gok-header{justify-content:center;gap:44px;}
.nav-toggle{display:none;background:none;border:none;font-size:22px;line-height:1;cursor:pointer;color:#1A1A1A;padding:6px 8px;border-radius:8px;}
.nav-toggle:hover{background:#F0EDE6;}
.header-nav-group{display:flex;align-items:center;gap:32px;}
.site-nav a{position:relative;padding:6px 2px;transition:color 0.2s ease;}
.site-nav a::after{content:"";position:absolute;left:2px;right:2px;bottom:0;height:2px;background:#C4271E;transform:scaleX(0);transform-origin:left;transition:transform 0.25s ease;}
.site-nav a:hover::after{transform:scaleX(1);}
.site-nav a:active{transform:scale(0.94);display:inline-block;}
@media (max-width:900px){
  .gok-header{justify-content:space-between;gap:16px;}
  .nav-toggle{display:block;}
  .header-nav-group{position:absolute;top:100%;left:0;right:0;background:#FAF8F4;flex-direction:column;align-items:stretch;gap:0;padding:0 24px;border-bottom:1px solid #E8E5DD;max-height:0;overflow:hidden;opacity:0;transition:max-height 0.35s ease,opacity 0.25s ease,padding 0.35s ease;}
  .header-nav-group.open{max-height:480px;opacity:1;padding:8px 24px 22px;}
  .site-nav{flex-direction:column;gap:2px;justify-content:flex-start;}
  .site-nav a{padding:13px 4px;border-bottom:1px solid #EFEDE6;}
  .site-nav a::after{display:none;}
  .header-actions{flex-direction:column;align-items:stretch;gap:12px;margin-top:14px;}
  /* Testimonials: single column on mobile — avoid horizontal overflow */
  #testimonials .gok-testimonials-reels,
  #testimonials .gok-testimonials-reviews{
    grid-template-columns:1fr!important;
  }
}
@keyframes gokmarquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeInScale{from{opacity:0;transform:scale(0.95);}to{opacity:1;transform:scale(1);}}
.gok-section{animation:fadeInUp 0.7s ease-out forwards;animation-play-state:paused;opacity:0;}
.gok-section.animated{animation-play-state:running;}
.gok-card{animation:fadeInScale 0.6s ease-out forwards;animation-play-state:paused;opacity:0;}
.gok-section.animated .gok-card{animation-play-state:running;}
.gok-card:nth-child(1){animation-delay:0.1s;}
.gok-card:nth-child(2){animation-delay:0.2s;}
.gok-card:nth-child(3){animation-delay:0.3s;}
.gok-card:nth-child(4){animation-delay:0.4s;}
.gok-card:nth-child(5){animation-delay:0.5s;}
.gok-card:nth-child(6){animation-delay:0.6s;}
.step-line{display:block;height:3px;background:#E3E0D8;transform:scaleX(0);transform-origin:left;transition:transform 0.6s cubic-bezier(.4,0,.2,1),background 0.3s ease;}
.gok-section.animated .step-line{transform:scaleX(1);}
.gok-card:nth-child(1) .step-line{background:#C4271E;transition-delay:0.1s;}
.gok-card:nth-child(2) .step-line{transition-delay:0.3s;}
.gok-card:nth-child(3) .step-line{transition-delay:0.5s;}
.gok-card:nth-child(4) .step-line{transition-delay:0.7s;}
input:focus,textarea:focus{outline:2px solid #C4271E;outline-offset:0;}
.gok-modal-overlay{display:none;position:fixed;inset:0;z-index:100;background:rgba(20,18,16,0.6);backdrop-filter:blur(8px);align-items:center;justify-content:center;padding:clamp(16px,4vw,24px);}
.gok-modal-overlay.open{display:flex;animation:fadeInUp 0.3s ease-out;}
.gok-modal-card{background:#FAF8F4;color:#111;border-radius:clamp(24px,4vw,32px);max-width:680px;width:100%;max-height:85vh;overflow-y:auto;padding:clamp(40px,6vw,56px) clamp(24px,5vw,48px);box-shadow:0 40px 120px rgba(0,0,0,0.35);animation:fadeInScale 0.3s ease-out;}

/* WP/Elementor chrome only */
body.elementor-template-canvas,
body.gok-landing-page{margin:0;padding:0;background:#FAF8F4;font-family:Montserrat,sans-serif;font-size:16px;line-height:normal;color:#1A1A1A;-webkit-font-smoothing:antialiased;}
.gok-landing-page .e-con.gok-landing-root-container,
.gok-landing-page .gok-landing-root-container>.e-con-inner{gap:0!important;--gap:0px;max-width:none!important;padding:0!important;}
.gok-landing-page .elementor-widget-html,
.gok-landing-page .elementor-widget-html .elementor-widget-container{margin:0!important;padding:0!important;}
.gok-landing-page .e-con,
.gok-landing-page .e-con-inner{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;max-width:none!important;}
.gok-landing-page .gok-landing-section.e-con,
.gok-landing-page .gok-landing-section .e-con-inner{width:100%!important;padding:0!important;gap:0!important;}
body.gok-landing-page .gok-header{z-index:50;}

/* CF7 modal skin — match original HTML form */
.gok-landing-root .wpcf7{margin:0;max-width:100%;}
.gok-landing-root .wpcf7 form{margin:0;}
.gok-landing-root .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;padding:0;border:0;word-wrap:normal!important;}
.gok-landing-root .wpcf7 form p{margin:0!important;padding:0!important;}
.gok-landing-root .wpcf7 form .gok-cf7 br{display:none!important;}
.gok-cf7{display:block;width:100%;}
.gok-cf7 .gok-cf7-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:clamp(16px,3vw,24px);margin-bottom:clamp(16px,3vw,24px);}
.gok-cf7 label.gok-cf7-field{display:flex;flex-direction:column;gap:clamp(6px,1vw,10px);font-size:clamp(13px,2vw,15px);font-weight:600;color:#333;margin:0 0 clamp(16px,3vw,24px);}
.gok-cf7 .gok-cf7-row label.gok-cf7-field{margin-bottom:0;}
.gok-cf7 label.gok-cf7-field.gok-cf7-field-message{margin-bottom:clamp(24px,4vw,32px);}
.gok-cf7 .wpcf7-form-control-wrap{display:block;width:100%;position:relative;}
.gok-cf7 input.gok-cf7-input,
.gok-cf7 input[type=text],
.gok-cf7 input[type=email],
.gok-cf7 textarea.gok-cf7-input,
.gok-cf7 textarea{
  display:block;box-sizing:border-box;width:100%!important;max-width:100%;
  background:#F2F0EA;border:2px solid #E3E1DA;border-radius:clamp(12px,2vw,16px);
  padding:clamp(12px,2vw,14px);font-family:Montserrat,sans-serif;font-size:clamp(13px,2vw,15px);
  transition:border-color .2s ease,background .2s ease;line-height:normal;box-shadow:none;outline:none;margin:0;color:#111;
}
/* Focus only (no hover white/bold border flash) — match original focus ring */
.gok-cf7 input:focus,
.gok-cf7 textarea:focus{
  background:#F2F0EA;border-color:#E3E1DA;outline:2px solid #C4271E;outline-offset:0;
}
.gok-cf7 .wpcf7-not-valid{
  border-color:#C4271E!important;background:#fff;
}
.gok-cf7 textarea{resize:vertical;min-height:96px;}
.gok-cf7 .gok-cf7-actions{display:flex;gap:clamp(12px,3vw,20px);width:100%;align-items:center;position:relative;}
.gok-cf7 .gok-cf7-actions .wpcf7-form-control-wrap,
.gok-cf7 .gok-cf7-actions p{flex:1;display:flex;margin:0!important;align-items:center;position:relative;}
.gok-cf7 input.wpcf7-submit,
.gok-cf7 .gok-cf7-submit{
  flex:1;width:100%;background:#C4271E;color:#fff;border:none;border-radius:999px;padding:clamp(14px,2vw,16px);
  font-family:Montserrat,sans-serif;font-size:clamp(14px,2vw,16px);font-weight:700;cursor:pointer;transition:all .2s ease;line-height:normal;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
}
.gok-cf7 input.wpcf7-submit:hover,
.gok-cf7 .gok-cf7-submit:hover{background:#A61D15;transform:scale(1.03);}
.gok-cf7 input.wpcf7-submit:disabled,
.gok-cf7 .gok-cf7-submit:disabled{opacity:.7;cursor:wait;transform:none;}
.gok-cf7-cancel{
  flex-shrink:0;background:none;border:1.5px solid #E3E1DA;border-radius:999px;padding:clamp(14px,2vw,16px) clamp(24px,4vw,32px);
  font-family:Montserrat,sans-serif;font-size:clamp(14px,2vw,16px);color:#555;cursor:pointer;font-weight:600;transition:all .2s ease;line-height:normal;
}
.gok-cf7-cancel:hover{border-color:#C4271E;color:#C4271E;}

/* Field validation tips */
.gok-cf7 .wpcf7-not-valid-tip{
  display:block!important;font-size:12px;font-weight:600;color:#C4271E;margin-top:6px;line-height:1.4;
}

/* Form-level error / fail message (hide empty + success — success uses modal) */
.gok-landing-root .wpcf7 form .wpcf7-response-output{
  display:none;margin:16px 0 0;padding:12px 16px;border-radius:12px;border:1.5px solid #E3E1DA;
  font-size:13px;font-weight:600;line-height:1.5;color:#333;background:#fff;
}
.gok-landing-root .wpcf7 form.invalid .wpcf7-response-output,
.gok-landing-root .wpcf7 form.unaccepted .wpcf7-response-output,
.gok-landing-root .wpcf7 form.failed .wpcf7-response-output,
.gok-landing-root .wpcf7 form.aborted .wpcf7-response-output,
.gok-landing-root .wpcf7 form.spam .wpcf7-response-output{
  display:block!important;border-color:#C4271E;color:#C4271E;background:#FFF5F4;
}
.gok-landing-root .wpcf7 form.sent .wpcf7-response-output{display:none!important;}

/* Submit loading spinner (CF7 uses visibility, not display) */
.gok-cf7 .gok-cf7-actions .wpcf7-spinner,
.gok-cf7 .wpcf7-spinner{
  visibility:hidden;display:inline-block!important;position:absolute;right:14px;top:50%;
  width:22px;height:22px;margin:-11px 0 0;padding:0;border:none;border-radius:50%;
  background:#fff;opacity:.95;z-index:2;pointer-events:none;
}
.gok-landing-root .wpcf7 form.submitting .wpcf7-spinner{
  visibility:visible!important;
}
.gok-landing-root .wpcf7 form.submitting .wpcf7-submit{opacity:.75;cursor:wait;transform:none!important;}
.gok-cf7 .wpcf7-spinner::before{
  content:"";position:absolute;top:3px;left:3px;width:6px;height:6px;border:none;border-radius:50%;
  background:#C4271E;transform-origin:8px 8px;animation:spin 1s linear infinite;
}
@keyframes gok-cf7-spin{to{transform:rotate(360deg);}}

