:root{
  --gc-bg:#050816;
  --gc-panel:#071022;
  --gc-panel-soft:#0c1730;
  --gc-border:rgba(121,144,255,.25);
  --gc-border-strong:rgba(89,222,255,.4);
  --gc-text:#f8fbff;
  --gc-sub:#c6d2ee;
  --gc-muted:#9fb0d3;
  --gc-green:#67f57b;
  --gc-green-strong:#42e86b;
  --gc-cyan:#5ce8ff;
  --gc-blue:#2d6dff;
}

.gc-offer-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  font-family:"Poppins",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.gc-offer-hidden{
  display:none;
}

.gc-offer-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,6,18,.78);
  backdrop-filter:blur(8px);
}

.gc-offer-modal{
  position:relative;
  z-index:2;
  width:min(100%, 1040px);
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 24%, rgba(34,98,255,.18), transparent 24%),
    radial-gradient(circle at 24% 78%, rgba(18,52,122,.18), transparent 32%),
    linear-gradient(135deg, #030816 0%, #061020 46%, #09182c 100%);
  border:1px solid rgba(176,196,255,.28);
  box-shadow:
    0 40px 100px rgba(0,0,0,.65),
    inset 0 1px 0 rgba(255,255,255,.06);
  animation:gcPop .32s ease-out;
}

.gc-offer-shell{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(360px, .9fr);
  min-height:540px;
}

.gc-offer-close{
  position:absolute;
  top:22px;
  right:22px;
  width:46px;
  height:46px;
  z-index:5;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.3);
  background:rgba(12,20,39,.74);
  color:#ffffff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:21px;
  cursor:pointer;
  transition:transform .2s ease, border-color .2s ease, background .2s ease;
}

.gc-offer-close:hover{
  transform:scale(1.04);
  border-color:rgba(255,255,255,.56);
  background:rgba(15,25,48,.95);
}

.gc-offer-left{
  position:relative;
  padding:40px 36px 32px 40px;
  color:var(--gc-text);
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#050816;
}

.gc-offer-left::after{
  content:"";
  position:absolute;
  top:24px;
  right:0;
  bottom:24px;
  width:1px;
  background:linear-gradient(180deg, transparent, rgba(126,170,255,.28), transparent);
}

.gc-offer-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  align-self:flex-start;
  padding:11px 22px;
  border-radius:999px;
  border:1px solid rgba(88,234,255,.58);
  background:rgba(9,18,38,.56);
  color:#ffffff;
  font-size:11px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 0 0 1px rgba(103,245,123,.08) inset;
}

.gc-offer-tag i{
  color:var(--gc-green);
  font-size:11px;
}

.gc-offer-title{
  margin:22px 0 12px;
  font-size:40px;
  line-height:1.14;
  font-weight:800;
  letter-spacing:-.04em;
  color:#ffffff;
}

.gc-offer-title span{
  color:var(--gc-green);
  text-shadow:0 0 18px rgba(103,245,123,.28);
}

.gc-offer-sub{
  max-width:470px;
  margin:0 0 24px;
  font-size:16px;
  line-height:1.6;
  color:var(--gc-sub);
}

.gc-offer-highlights{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:0;
  margin-bottom:24px;
}

.gc-offer-highlights span{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:6px 10px;
  text-align:center;
  color:#f6fbff;
  min-height:104px;
}

.gc-offer-highlights span:not(:last-child){
  border-right:1px solid rgba(126,150,255,.24);
}

.gc-offer-highlights i{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:999px;
  border:2px solid rgba(103,245,123,.85);
  color:var(--gc-green);
  font-size:22px;
  box-shadow:
    0 0 18px rgba(103,245,123,.12),
    inset 0 0 18px rgba(103,245,123,.08);
}

.gc-offer-highlights strong{
  font-size:13px;
  line-height:1.35;
  font-weight:600;
}

.gc-offer-form{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.gc-offer-form .gc-offer-input-wrap{
  position:relative;
  display:flex;
  align-items:center;
  width:100%;
  min-height:62px;
  border:1.5px solid rgba(255,255,255,.34);
  border-radius:10px;
  background:linear-gradient(180deg, rgba(7,13,28,.92), rgba(5,10,23,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  overflow:hidden;
}

.gc-offer-form .gc-offer-input-wrap::after{
  content:"";
  position:absolute;
  inset:-30% auto -30% -20%;
  width:44%;
  background:linear-gradient(90deg, transparent 0%, rgba(92,232,255,.08) 45%, rgba(103,245,123,.35) 50%, rgba(92,232,255,.08) 55%, transparent 100%);
  transform:translateX(-140%) skewX(-18deg);
  animation:gcInputSweep 2.6s ease-in-out infinite;
  pointer-events:none;
}

.gc-offer-form .gc-offer-input-icon{
  position:absolute;
  left:20px;
  top:50%;
  transform:translateY(-50%);
  color:rgba(255,255,255,.88);
  font-size:18px;
  pointer-events:none;
  width:18px;
  text-align:center;
  z-index:2;
}

.gc-offer-form .gc-offer-input{
  -webkit-appearance:none;
  appearance:none;
  box-sizing:border-box;
  display:block;
  width:100%;
  height:62px;
  padding:0 20px 0 54px;
  border-radius:10px;
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#ffffff !important;
  font-size:15px;
  line-height:62px;
  outline:none;
  margin:0;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.gc-offer-form .gc-offer-input::placeholder{
  color:rgba(231,239,255,.56);
  font-size:14px;
  line-height:62px;
  opacity:1;
  animation:gcPlaceholderGlow 1.8s ease-in-out infinite;
}

.gc-offer-form .gc-offer-input:focus{
  outline:none !important;
}

.gc-offer-form .gc-offer-input:focus::placeholder,
.gc-offer-form .gc-offer-input:not(:placeholder-shown)::placeholder{
  animation:none;
  color:rgba(231,239,255,.38);
}

.gc-offer-form .gc-offer-input-wrap:focus-within{
  border-color:rgba(103,245,123,.6);
  box-shadow:0 0 0 3px rgba(103,245,123,.08);
}

.gc-offer-form .gc-offer-input-wrap:focus-within::after,
.gc-offer-form .gc-offer-input-wrap.gc-offer-filled::after{
  animation:none;
  opacity:0;
}

.gc-offer-form .gc-offer-btn{
  -webkit-appearance:none;
  appearance:none;
  display:block;
  width:100%;
  min-height:58px;
  padding:15px 24px;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:18px;
  background-color:#63ef7d !important;
  background-image:linear-gradient(90deg, #73f2d4 0%, #68f08e 48%, #5ae865 100%) !important;
  color:#000000 !important;
  font-size:18px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  cursor:pointer;
  text-align:center;
  text-decoration:none !important;
  box-shadow:0 16px 34px rgba(82,240,109,.22);
  margin:0;
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.gc-offer-form .gc-offer-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 20px 40px rgba(82,240,109,.28);
  filter:saturate(1.05);
}

.gc-offer-form button.gc-offer-btn,
.gc-offer-form input[type="submit"].gc-offer-btn,
.gc-offer-form .gc-offer-btn[type="submit"]{
  background-color:#63ef7d !important;
  background-image:linear-gradient(90deg, #73f2d4 0%, #68f08e 48%, #5ae865 100%) !important;
  color:#000000 !important;
}

.gc-offer-trust{
  margin:18px 0 0;
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--gc-sub);
  font-size:13px;
  line-height:1.5;
}

.gc-offer-trust i{
  color:var(--gc-cyan);
  font-size:15px;
}

.gc-offer-success{
  display:none;
  margin-top:18px;
}

.gc-offer-success.is-visible{
  display:block;
  animation:gcSuccessReveal .8s cubic-bezier(.2,.9,.2,1) both;
}

.gc-offer-success-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(103,245,123,.5);
  background:rgba(11,24,30,.76);
  color:#f8fff9;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 0 24px rgba(103,245,123,.12);
}

.gc-offer-success-badge i{
  color:var(--gc-green);
}

.gc-offer-success-card{
  position:relative;
  overflow:hidden;
  margin-top:14px;
  padding:26px 22px 22px;
  border-radius:24px;
  border:1px solid rgba(103,245,123,.32);
  background:
    radial-gradient(circle at top, rgba(103,245,123,.18), transparent 38%),
    linear-gradient(145deg, rgba(10,27,23,.96), rgba(7,18,37,.98));
  box-shadow:
    0 24px 48px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.06),
    0 0 36px rgba(103,245,123,.12);
}

.gc-offer-success-burst{
  position:absolute;
  width:150px;
  height:150px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(92,232,255,.26) 0%, rgba(103,245,123,.12) 36%, transparent 72%);
  filter:blur(2px);
  animation:gcBurstFloat 3.4s ease-in-out infinite;
  pointer-events:none;
}

.gc-offer-success-burst-one{
  top:-30px;
  right:-18px;
}

.gc-offer-success-burst-two{
  bottom:-42px;
  left:-10px;
  animation-delay:-1.5s;
}

.gc-offer-success-label{
  margin:0 0 10px;
  color:var(--gc-sub);
  font-size:13px;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.gc-offer-coupon-code{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:92px;
  padding:16px 18px;
  border-radius:22px;
  border:1px solid rgba(92,232,255,.45);
  background:
    linear-gradient(120deg, rgba(17,42,42,.86), rgba(9,20,38,.94)),
    linear-gradient(90deg, rgba(115,242,212,.12), rgba(90,232,101,.08));
  color:#ffffff;
  font-size:34px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  text-align:center;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.04),
    0 0 30px rgba(92,232,255,.14);
  animation:gcCouponPop .9s cubic-bezier(.19,1,.22,1) .12s both, gcCouponPulse 2.4s ease-in-out 1.1s infinite;
}

.gc-offer-coupon-code::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg, transparent 20%, rgba(255,255,255,.24) 48%, transparent 62%);
  transform:translateX(-135%);
  animation:gcCouponShine 2.8s ease-in-out 1.2s infinite;
}

.gc-offer-success-note{
  margin:14px 0 0;
  color:var(--gc-text);
  font-size:14px;
  line-height:1.6;
}

.gc-offer-copy-btn{
  margin-top:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:50px;
  padding:12px 18px;
  border:1px solid rgba(103,245,123,.28);
  border-radius:14px;
  background:linear-gradient(90deg, #73f2d4 0%, #68f08e 48%, #5ae865 100%);
  color:#04110b;
  font-size:14px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(82,240,109,.22);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.gc-offer-copy-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 36px rgba(82,240,109,.28);
  filter:saturate(1.06);
}

.gc-offer-copy-btn i,
.gc-offer-copy-btn span{
  color:#04110b !important;
}

.gc-offer-copy-btn:focus{
  outline:none;
}

.gc-offer-copy-btn:focus-visible{
  box-shadow:
    0 0 0 3px rgba(103,245,123,.18),
    0 18px 36px rgba(82,240,109,.3);
}

.gc-offer-copy-btn.is-copied{
  background:linear-gradient(90deg, #b8ffd9 0%, #94ffb4 100%);
  border-color:rgba(184,255,217,.5);
}

.gc-offer-copy-btn.is-copied i,
.gc-offer-copy-btn.is-copied span{
  color:#062212 !important;
}

.gc-offer-right{
  position:relative;
  overflow:hidden;
  background:#050816;
}

.gc-offer-right::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 52% 30%, rgba(48,116,255,.16), transparent 26%),
    linear-gradient(180deg, rgba(255,255,255,.02), transparent 24%);
  pointer-events:none;
}

.gc-offer-right-inner{
  position:relative;
  z-index:1;
  min-height:100%;
  padding:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.gc-offer-image-stage{
  position:relative;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}

.gc-offer-image-stage::before{
  content:"";
  position:absolute;
  left:12%;
  right:12%;
  bottom:2%;
  height:24px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(49,132,255,.72) 0%, rgba(49,132,255,.2) 46%, transparent 76%);
  filter:blur(4px);
}

.gc-offer-image-stage::after{
  content:"";
  position:absolute;
  left:16%;
  right:16%;
  bottom:12%;
  height:112px;
  border:1.5px solid rgba(68,153,255,.6);
  border-top-left-radius:120px;
  border-top-right-radius:120px;
  border-bottom:none;
  box-shadow:0 0 22px rgba(65,146,255,.3);
}

.gc-offer-image-glow{
  position:absolute;
  inset:14% 10% 20%;
  background:
    radial-gradient(circle at 50% 28%, rgba(72,163,255,.42), transparent 30%),
    radial-gradient(circle at 50% 72%, rgba(44,108,255,.34), transparent 40%);
  filter:blur(18px);
}

.gc-offer-image-stage img{
  position:relative;
  z-index:1;
  width:100%;
  height:500px;
  display:block;
  filter:drop-shadow(0 26px 28px rgba(0,0,0,.4));
}

.gc-offer-form.is-loading .gc-offer-btn{
  opacity:.75;
  pointer-events:none;
}

@keyframes gcPop{
  from{
    transform:scale(.96);
    opacity:0;
  }
  to{
    transform:scale(1);
    opacity:1;
  }
}

@keyframes gcPlaceholderGlow{
  0%, 100%{
    color:rgba(231,239,255,.56);
    text-shadow:none;
  }
  50%{
    color:rgba(255,255,255,.96);
    text-shadow:0 0 14px rgba(92,232,255,.28);
  }
}

@keyframes gcInputSweep{
  0%, 18%{
    transform:translateX(-140%) skewX(-18deg);
    opacity:0;
  }
  30%, 78%{
    opacity:1;
  }
  100%{
    transform:translateX(340%) skewX(-18deg);
    opacity:0;
  }
}

@keyframes gcSuccessReveal{
  0%{
    opacity:0;
    transform:translateY(18px) scale(.96);
  }
  60%{
    opacity:1;
    transform:translateY(-4px) scale(1.02);
  }
  100%{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@keyframes gcCouponPop{
  0%{
    opacity:0;
    transform:scale(.7) rotate(-4deg);
  }
  60%{
    opacity:1;
    transform:scale(1.06) rotate(1deg);
  }
  100%{
    opacity:1;
    transform:scale(1) rotate(0deg);
  }
}

@keyframes gcCouponPulse{
  0%, 100%{
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.04),
      0 0 24px rgba(92,232,255,.12);
  }
  50%{
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.08),
      0 0 36px rgba(103,245,123,.22);
  }
}

@keyframes gcCouponShine{
  0%, 10%{
    transform:translateX(-135%);
  }
  40%, 100%{
    transform:translateX(135%);
  }
}

@keyframes gcBurstFloat{
  0%, 100%{
    transform:translateY(0) scale(1);
    opacity:.8;
  }
  50%{
    transform:translateY(-12px) scale(1.08);
    opacity:1;
  }
}

@media (max-width:1180px){
  .gc-offer-shell{
    grid-template-columns:1fr;
  }

  .gc-offer-left::after{
    display:none;
  }

  .gc-offer-left{
    padding:48px 30px 26px;
  }

  .gc-offer-right-inner{
    padding:18px 26px 30px;
  }

  .gc-offer-title{
    font-size:36px;
  }

  .gc-offer-sub{
    font-size:15px;
  }
}

@media (max-width:760px){
  .gc-offer-overlay{
    padding:10px;
    align-items:center;
  }

  .gc-offer-modal{
    width:100%;
    max-height:calc(100vh - 20px);
    overflow:auto;
    border-radius:20px;
  }

  .gc-offer-shell{
    min-height:auto;
    grid-template-columns:1fr;
  }

  .gc-offer-left{
    order:2;
    padding:10px 14px 16px;
  }

  .gc-offer-right-inner{
    padding:52px 0 0;
  }

  .gc-offer-right{
    order:1;
    min-height:auto;
  }

  .gc-offer-left::after{
    display:none;
  }

  .gc-offer-close{
    top:12px;
    right:12px;
    width:38px;
    height:38px;
    font-size:16px;
  }

  .gc-offer-tag,
  .gc-offer-title,
  .gc-offer-sub,
  .gc-offer-highlights{
    display:none !important;
  }

  .gc-offer-form{
    gap:8px;
  }

  .gc-offer-form .gc-offer-input-wrap{
    min-height:46px;
    border-radius:9px;
  }

  .gc-offer-form .gc-offer-input{
    height:46px;
    line-height:46px;
    padding:0 12px 0 40px;
    font-size:13px;
  }

  .gc-offer-form .gc-offer-input::placeholder{
    font-size:12px;
    line-height:46px;
  }

  .gc-offer-form .gc-offer-input-icon{
    left:14px;
    font-size:13px;
    width:14px;
  }

  .gc-offer-form .gc-offer-btn{
    min-height:46px;
    padding:12px 16px;
    font-size:14px;
    border-radius:12px;
    letter-spacing:.06em;
  }

  .gc-offer-trust{
    margin-top:10px;
    font-size:11px;
    gap:6px;
    justify-content:center;
    text-align:center;
  }

  .gc-offer-trust i{
    font-size:12px;
  }

  .gc-offer-success{
    margin-top:12px;
  }

  .gc-offer-success:not(.is-visible){
    display:none !important;
  }

  .gc-offer-success-card{
    padding:18px 14px 16px;
    border-radius:16px;
  }

  .gc-offer-success-badge{
    font-size:10px;
    padding:7px 12px;
  }

  .gc-offer-success-label{
    font-size:11px;
  }

  .gc-offer-coupon-code{
    min-height:64px;
    font-size:20px;
    letter-spacing:.1em;
  }

  .gc-offer-success-note{
    font-size:12px;
    line-height:1.45;
  }

  .gc-offer-copy-btn{
    width:100%;
    min-height:44px;
    font-size:12px;
  }

  .gc-offer-image-stage{
    width:100%;
    margin:0 auto;
  }

  .gc-offer-image-stage img{
    content:url("https://goclein.com/wp-content/uploads/2026/06/Pop-Mobile.webp");
    width:100%;
    height:auto;
    max-height:none;
    object-fit:cover;
  }

  .gc-offer-image-stage::after{
    display:none;
  }

  .gc-offer-image-stage::before{
    display:none;
  }

  .gc-offer-image-glow{
    display:none;
  }
}
