@import url('/assets/css/alln-checkout-base-v1.css');

/* ALLN checkout copy + bundle composition v2.7 */
#buyer-info-heading{
  font-size:0;
  line-height:1.15;
}
#buyer-info-heading::after{
  content:'Secure Your Founding 100 Spot';
  display:block;
  font-size:28px;
  line-height:1.15;
  color:#1f2c3d;
  font-weight:900;
}

.ag-alln-bundle-visual>img{
  height:202px;
  transform:translateX(-92px);
}
.ag-alln-review-bundle-img{
  width:72px;
  right:-4px;
  bottom:14px;
}

@media(max-width:650px){
  #buyer-info-heading::after{font-size:24px;}
  .ag-alln-bundle-visual>img{transform:translateX(-78px);}
  .ag-alln-review-bundle-img{width:70px;right:-2px;}
}


/* Approved ALLN bundle composite v2.7 */
.ag-alln-bundle-composite{overflow:hidden}
.ag-alln-bundle-composite-img{
  width:auto!important;
  height:208px!important;
  max-width:96%!important;
  object-fit:contain!important;
  transform:none!important;
  filter:drop-shadow(0 10px 16px rgba(0,0,0,.16));
}
@media(max-width:650px){
  .ag-alln-bundle-composite-img{height:184px!important;max-width:98%!important}
}


/* Bundle composite centering fix v2.8 */
.ag-alln-product-visual.ag-alln-bundle-composite{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:10px 22px!important;
  box-sizing:border-box!important;
}
.ag-alln-product-visual.ag-alln-bundle-composite > .ag-alln-bundle-composite-img{
  display:block!important;
  width:88%!important;
  height:auto!important;
  max-width:88%!important;
  max-height:205px!important;
  margin:0 auto!important;
  transform:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  flex:0 0 auto!important;
}
@media(max-width:960px){
  .ag-alln-product-visual.ag-alln-bundle-composite > .ag-alln-bundle-composite-img{
    width:80%!important;
    max-width:80%!important;
    max-height:230px!important;
  }
}
@media(max-width:650px){
  .ag-alln-product-visual.ag-alln-bundle-composite{
    padding:10px 18px!important;
  }
  .ag-alln-product-visual.ag-alln-bundle-composite > .ag-alln-bundle-composite-img{
    width:86%!important;
    max-width:86%!important;
    max-height:185px!important;
  }
}


/* Real customer moments redesign v3.0 */
.ag-alln-touchpoint-panel-v2{
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.38fr)!important;
  gap:40px!important;
  align-items:stretch!important;
  padding:36px!important;
  background:
    radial-gradient(circle at 88% 18%,rgba(241,132,75,.10),transparent 28%),
    linear-gradient(135deg,#18232e 0%,#14212b 62%,#1e2d25 100%)!important;
  border:1px solid rgba(255,255,255,.09)!important;
  box-shadow:0 20px 48px rgba(20,32,44,.15)!important;
}

.ag-alln-touchpoint-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.ag-alln-touchpoint-copy .ag-kicker{
  display:inline-flex!important;
  align-self:flex-start;
  width:auto!important;
  background:#fff2e9!important;
  border:1px solid #edc3ad!important;
  border-radius:999px!important;
  padding:9px 15px!important;
  color:#a85b34!important;
  letter-spacing:.055em!important;
}

.ag-alln-touchpoint-copy h2{
  margin:20px 0 14px!important;
  color:#fff!important;
  font-size:clamp(30px,3vw,40px)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}

.ag-alln-touchpoint-copy p{
  margin:0!important;
  max-width:560px;
  color:#dce5ec!important;
  font-size:17px!important;
  line-height:1.68!important;
}

.ag-alln-touchpoints-v2{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
}

.ag-alln-touchpoints-v2 .ag-alln-touchpoint-card{
  min-width:0;
  min-height:184px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  gap:7px;
  padding:18px 16px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:18px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.035));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 12px 28px rgba(0,0,0,.08);
}

.ag-alln-touchpoints-v2 .ag-alln-touchpoint-card:nth-child(odd){
  border-color:rgba(96,164,101,.30);
}

.ag-alln-touchpoints-v2 .ag-alln-touchpoint-icon{
  min-height:0!important;
  width:52px!important;
  height:52px!important;
  flex:0 0 52px!important;
  display:grid!important;
  place-items:center!important;
  margin:0 0 auto!important;
  padding:0!important;
  border-radius:14px!important;
  border:1px solid rgba(241,132,75,.38)!important;
  background:rgba(241,132,75,.12)!important;
  color:#f5a06f!important;
  font-size:0!important;
}

.ag-alln-touchpoints-v2 .ag-alln-touchpoint-icon-green{
  border-color:rgba(96,164,101,.42)!important;
  background:rgba(96,164,101,.12)!important;
  color:#8bc48e!important;
}

.ag-alln-touchpoint-icon svg{
  width:30px!important;
  height:30px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.ag-alln-touchpoints-v2 .ag-alln-touchpoint-card b{
  color:#fff!important;
  font-size:16px!important;
  line-height:1.15!important;
  margin:0!important;
}

.ag-alln-touchpoints-v2 .ag-alln-touchpoint-card small{
  color:#cbd5dd!important;
  font-size:11px!important;
  line-height:1.38!important;
  margin:0!important;
}

@media(max-width:1180px){
  .ag-alln-touchpoint-panel-v2{
    grid-template-columns:1fr!important;
  }
  .ag-alln-touchpoints-v2{
    grid-template-columns:repeat(5,minmax(120px,1fr))!important;
  }
}

@media(max-width:900px){
  .ag-alln-touchpoints-v2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .ag-alln-touchpoints-v2 .ag-alln-touchpoint-card:last-child{
    grid-column:span 2;
  }
}

@media(max-width:600px){
  .ag-alln-touchpoint-panel-v2{
    padding:24px!important;
  }
  .ag-alln-touchpoints-v2{
    grid-template-columns:1fr!important;
  }
  .ag-alln-touchpoints-v2 .ag-alln-touchpoint-card:last-child{
    grid-column:auto;
  }
  .ag-alln-touchpoints-v2 .ag-alln-touchpoint-card{
    min-height:150px;
  }
}


/* Touchpoint illustration + alignment polish v3.1 */
.ag-alln-touchpoints-v3{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:stretch!important;
}
.ag-alln-touchpoints-v3 .ag-alln-touchpoint-card{
  min-width:0;
  min-height:210px;
  display:grid!important;
  grid-template-rows:84px 1fr!important;
  align-items:start!important;
  gap:18px!important;
  padding:20px 17px 18px!important;
  border-radius:18px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.035))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 12px 28px rgba(0,0,0,.08)!important;
}
.ag-alln-touchpoint-illustration{
  width:72px!important;
  height:72px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  margin:0!important;
  border-radius:18px!important;
  border:1px solid currentColor!important;
  background:rgba(255,255,255,.035)!important;
}
.ag-alln-touchpoint-illustration svg{
  width:58px!important;
  height:58px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.ag-alln-touchpoint-green{
  color:#88c58f!important;
  background:linear-gradient(145deg,rgba(83,146,94,.16),rgba(83,146,94,.055))!important;
  box-shadow:inset 0 0 0 1px rgba(96,164,101,.08)!important;
}
.ag-alln-touchpoint-orange{
  color:#f29a66!important;
  background:linear-gradient(145deg,rgba(241,132,75,.16),rgba(241,132,75,.055))!important;
  box-shadow:inset 0 0 0 1px rgba(241,132,75,.08)!important;
}
.ag-alln-touchpoint-illustration .ag-ill-accent{
  stroke:#f3a06f!important;
}
.ag-alln-touchpoint-orange .ag-ill-accent{
  stroke:#8bc48e!important;
}
.ag-alln-touchpoint-illustration .ag-ill-bg{
  opacity:.55;
}
.ag-alln-touchpoint-text{
  display:grid!important;
  grid-template-rows:42px minmax(42px,auto)!important;
  align-content:start!important;
  gap:7px!important;
}
.ag-alln-touchpoint-text b{
  display:flex!important;
  align-items:flex-start!important;
  margin:0!important;
  color:#fff!important;
  font-size:17px!important;
  line-height:1.12!important;
}
.ag-alln-touchpoint-text small{
  display:block!important;
  margin:0!important;
  color:#cbd5dd!important;
  font-size:11.5px!important;
  line-height:1.42!important;
}
@media(max-width:1180px){
  .ag-alln-touchpoints-v3{grid-template-columns:repeat(5,minmax(120px,1fr))!important}
}
@media(max-width:900px){
  .ag-alln-touchpoints-v3{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-card:last-child{grid-column:span 2}
}
@media(max-width:600px){
  .ag-alln-touchpoints-v3{grid-template-columns:1fr!important}
  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-card:last-child{grid-column:auto}
  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-card{
    min-height:172px;
    grid-template-columns:80px 1fr!important;
    grid-template-rows:1fr!important;
    align-items:center!important;
  }
  .ag-alln-touchpoint-text{
    grid-template-rows:auto auto!important;
  }
}


/* Touchpoint card vertical balance v3.2 */
@media(min-width:901px){
  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-card{
    position:relative!important;
    display:block!important;
    min-height:210px!important;
  }

  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-illustration{
    position:absolute!important;
    top:22px!important;
    left:18px!important;
  }

  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-text{
    position:absolute!important;
    left:18px!important;
    right:18px!important;
    top:56%!important;
    transform:translateY(-8%)!important;
    display:grid!important;
    grid-template-rows:44px minmax(48px,auto)!important;
    align-content:start!important;
    gap:8px!important;
  }

  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-text b{
    display:flex!important;
    align-items:flex-start!important;
  }
}

@media(max-width:900px){
  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-card{
    position:static!important;
    display:grid!important;
  }
  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-illustration,
  .ag-alln-touchpoints-v3 .ag-alln-touchpoint-text{
    position:static!important;
    transform:none!important;
  }
}


/* Product close-up lightbox v1 */
.ag-alln-zoomable-image{
  cursor:zoom-in!important;
}
.ag-alln-zoomable-image:focus-visible{
  outline:3px solid #f58b53!important;
  outline-offset:4px!important;
  border-radius:10px;
}
.ag-alln-zoomable-visual{
  position:relative!important;
}
.ag-alln-zoomable-visual::after{
  content:'Click to enlarge';
  position:absolute;
  right:12px;
  bottom:10px;
  z-index:8;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(20,32,44,.82);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-size:10px;
  font-weight:800;
  letter-spacing:.02em;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .18s ease,transform .18s ease;
  pointer-events:none;
}
.ag-alln-zoomable-visual:hover::after,
.ag-alln-zoomable-visual:focus-within::after{
  opacity:1;
  transform:translateY(0);
}

body.ag-alln-lightbox-open{
  overflow:hidden;
}
.ag-alln-lightbox{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  padding:28px;
  opacity:0;
  visibility:hidden;
  transition:opacity .18s ease,visibility .18s ease;
}
.ag-alln-lightbox.is-open{
  opacity:1;
  visibility:visible;
}
.ag-alln-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(7,13,19,.90);
  backdrop-filter:blur(7px);
  cursor:zoom-out;
}
.ag-alln-lightbox-dialog{
  position:relative;
  z-index:1;
  width:min(1000px,92vw);
  max-height:92vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:22px 22px 16px;
  border-radius:24px;
  background:
    radial-gradient(circle at 50% 40%,rgba(255,255,255,.08),transparent 55%),
    linear-gradient(145deg,#18242e,#111c24);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 30px 90px rgba(0,0,0,.48);
}
.ag-alln-lightbox-image{
  display:block;
  max-width:100%;
  max-height:78vh;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 20px 28px rgba(0,0,0,.38));
}
.ag-alln-lightbox-close{
  position:absolute;
  top:12px;
  right:14px;
  z-index:3;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:50%;
  background:rgba(9,17,24,.82);
  color:#fff;
  font-size:30px;
  line-height:1;
  cursor:pointer;
}
.ag-alln-lightbox-close:hover,
.ag-alln-lightbox-close:focus-visible{
  background:#f58b53;
  border-color:#f58b53;
  outline:none;
}
.ag-alln-lightbox-caption{
  min-height:18px;
  color:#d9e1e7;
  font-size:13px;
  text-align:center;
}
@media(max-width:650px){
  .ag-alln-lightbox{padding:14px}
  .ag-alln-lightbox-dialog{
    width:96vw;
    max-height:94vh;
    padding:18px 12px 12px;
    border-radius:18px;
  }
  .ag-alln-lightbox-image{max-height:80vh}
  .ag-alln-zoomable-visual::after{
    opacity:1;
    transform:none;
    font-size:9px;
    right:8px;
    bottom:8px;
  }
}


/* Product deep-dive links v3.3 */
.ag-alln-detail-link-wrap{
  display:block;
  margin-top:auto;
}
.ag-alln-detail-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#355d40;
  font-size:13px;
  font-weight:900;
  line-height:1.35;
  text-decoration:none;
  border-bottom:1px solid rgba(53,93,64,.25);
  padding-bottom:2px;
}
.ag-alln-detail-link:hover,
.ag-alln-detail-link:focus-visible{
  color:#a85b34;
  border-bottom-color:#a85b34;
  outline:none;
}



/* Product card row alignment v3.4 */
.ag-alln-products .ag-alln-price-row{
  margin-top:0!important;
}


/* Bundle customizer v3.5 */
.ag-alln-bundle-customizer{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);
  gap:24px;
  align-items:center;
  margin:-12px 0 34px;
  padding:24px 26px;
  border:1px solid #cfdccc;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fbf6,#fff8f3);
  box-shadow:0 10px 26px rgba(31,44,61,.05);
}
.ag-alln-bundle-customizer[hidden]{display:none!important}
.ag-alln-bundle-customizer h3{
  margin:5px 0 8px;
  color:#1f2c3d;
  font-size:23px;
}
.ag-alln-bundle-customizer p{
  margin:0;
  max-width:650px;
  color:#5c6977;
  line-height:1.6;
  font-size:14px;
}
.ag-alln-bundle-addon-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.ag-alln-bundle-addon{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:15px 16px;
  border:1px solid #d8e2d5;
  border-radius:15px;
  background:#fff;
}
.ag-alln-bundle-addon>span{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.ag-alln-bundle-addon strong{
  color:#243448;
  font-size:14px;
}
.ag-alln-bundle-addon small{
  color:#355d40;
  font-weight:900;
  font-size:12px;
}
.ag-alln-bundle-addon select{
  min-width:72px;
  border:1px solid #d6ddd3;
  border-radius:10px;
  padding:9px 10px;
  background:#fff;
  font:inherit;
  font-weight:800;
}
@media(max-width:960px){
  .ag-alln-bundle-customizer{grid-template-columns:1fr;margin-top:-8px}
}
@media(max-width:650px){
  .ag-alln-bundle-customizer{padding:20px}
  .ag-alln-bundle-addon-grid{grid-template-columns:1fr}
}


/* Hide zero-value order rows */
.ag-alln-summary-line[hidden]{
  display:none!important;
}


/* ALLN hero live spacing fix 2026-09-11 */
@media(min-width:961px){
  .ag-alln-review-hero-img{
    top:calc(3% + 86px);
    bottom:auto;
    transform:translateX(50px) rotate(1.5deg);
  }
}
