/* Checkout Flow – Solo Builder Access */

.checkout-flow-solo-access {
  max-width: 760px;
  margin: 0 auto;
}

.checkout-flow-solo-access h1 {
	margin: 0 0 4px 0;
	font-size: 32px;
	line-height: 1.05;
	font-weight: 800;
	letter-spacing: -0.02em;
}

.checkout-flow-subtitle {
	margin: 0;
	font-size: 18px;
	color: #4b5563;
	line-height: 0;
}
.checkout-flow-rule {
  border: 0;
  border-top: 1px solid rgba(0,0,0,.12);
  margin: 18px 0 22px;
}

.checkout-flow-lead {
  margin: 0 0 10px 0;
  font-size: 18px;
  line-height: 1.6;
  color: #111827;
}

.checkout-flow-columns {
	display: grid;
	grid-template-columns: 1fr;
	gap: 22px;
	margin-top: 8px;
	margin-bottom: 50px;
}

@media (min-width: 640px) {
  .checkout-flow-columns {
    grid-template-columns: 1fr 1fr;
    gap: 28px;
  }
}

.checkout-flow-solo-access h2 {
  margin: 0 0 12px 0;
  font-size: 20px;
  font-weight: 800;
  color: #111827;
}

.checkout-flow-solo-access ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.checkout-flow-solo-access li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 10px 0;
  font-size: 16px;
  line-height: 1.55;
  color: #111827;
}

.checkout-flow-check {
  width: 22px;
  font-weight: 900;
  color: #1f9d55;
  flex: 0 0 22px;
  text-align: center;
}

.checkout-flow-bullet {
  width: 22px;
  font-weight: 900;
  color: #6b7280;
  flex: 0 0 22px;
  text-align: center;
}
/* --- Checkout Flow page scope --- */
.path-purchase-90-day-access .checkout-flow-solo-access{
  max-width: 760px;
  margin: 0 auto;
  padding: 18px 18px 10px;
}

/* Typography: match the mockup (kill Bartik serif look here) */
.path-purchase-90-day-access .checkout-flow-solo-access h1{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 44px;
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.02em;
  margin: 0 0 4px 0;
  text-align: center;
}

.path-purchase-90-day-access .checkout-flow-subtitle{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  color: #4b5563;
  margin: 0 0 22px 0;
  text-align: center;
}

/* Rules and copy spacing */
.path-purchase-90-day-access .checkout-flow-rule{
  border: 0;
  border-top: 1px solid rgba(0,0,0,.12);
  margin: 16px 0 18px;
}

.path-purchase-90-day-access .checkout-flow-lead{
  font-size: 18px;
  line-height: 1.6;
  color: #111827;
  margin: 0 0 10px 0;
}

/* Two-column layout */
.path-purchase-90-day-access .checkout-flow-columns{
  display: grid;
  grid-template-columns: 1fr;
  gap: 22px;
  margin-top: 8px;
}

@media (min-width: 640px){
  .path-purchase-90-day-access .checkout-flow-columns{
    grid-template-columns: 1fr 1fr;
    gap: 28px;
  }
}

/* Column headers */
.path-purchase-90-day-access .checkout-flow-solo-access h2{
  font-size: 20px;
  font-weight: 800;
  margin: 0 0 12px 0;
}

/* Lists */
.path-purchase-90-day-access .checkout-flow-solo-access ul{
  margin: 0;
  padding: 0;
  list-style: none;
}

.path-purchase-90-day-access .checkout-flow-solo-access li{
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin: 10px 0;
  font-size: 16px;
  line-height: 1.55;
}

.path-purchase-90-day-access .checkout-flow-check{
  width: 22px;
  font-weight: 900;
  color: #1f9d55;
  flex: 0 0 22px;
  text-align: center;
}

.path-purchase-90-day-access .checkout-flow-bullet{
  width: 100px;
  font-weight: 900;
  color: #6b7280;
  flex: 0 0 22px;
  text-align: center;
}
/* Solo Builder – Activate 90-Day Access button */
#commerce-order-item-add-to-cart-form-commerce-product-1
  .form-actions
  .button--primary {

  background: linear-gradient(135deg, #0f4c5c 0%, #0b6b6f 100%);
  color: #ffffff;

  border: none;
  border-radius: 6px;

  padding: 14px 20px;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.4px;
  text-transform: none;

  width: 100%;
  cursor: pointer;

  transition:
    background 0.25s ease,
    transform 0.15s ease,
    box-shadow 0.15s ease;
}

/* Solo Builder purchase gate: hide options, show only CTA */
#commerce-order-item-add-to-cart-form-commerce-product-1 .field--name-purchased-entity,
#commerce-order-item-add-to-cart-form-commerce-product-1 .field--name-quantity,
#commerce-order-item-add-to-cart-form-commerce-product-1 .form-item-quantity,
#commerce-order-item-add-to-cart-form-commerce-product-1 .form-item-purchased-entity {
  display: none;
}
/* PRICES ABOVE CTA — INVERTED LOGIC */

/* "Was" price (old Price field) */
.path-purchase .product--variation-field--variation_price__1 {
  margin-top: -205px;
  margin-bottom: 10px;
  font-size: 125%;
  font-weight: bold;
  text-align: center;
  text-decoration: line-through;
  opacity: 0.65;
  display: block;
}

/* Final price (List Price treated as real price) */
.path-purchase .product--variation-field--variation_list_price__1 {
  margin-top: 0;
  margin-bottom: 80px;
  font-size: 175%;
  font-weight: bolder;
  text-align: center;
  display: block;
}

/* Push CTA DOWN */
.path-purchase .button--add-to-cart {
  margin-top: 120px;
  margin-bottom: 20px;
  display: block !important;
}

/* Login link */
.path-purchase .already-have-access-link {
  display: block;
  text-align: center;
  margin: 0 0 10px 0;
  font-size: 150%;
}

/* Minor form correction */
.path-purchase .form-actions {
  margin-top: -25px;
}
/* */
/* MOVE THE SPACE BELOW THE COUPON CODE DOWN */
#edit-sidebar-coupon-redemption-form {
  margin-bottom: 24px; /* was 60px; tighter like the mock */
}

/* ORDER SUMMARY: make it a clean "card" */
#edit-order-summary.checkout-pane-order-summary {
  background: #f7f7f7;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  padding: 18px 18px 12px 18px;
  margin-bottom: 80px;
}

/* tighten the heading spacing */
#edit-order-summary.checkout-pane-order-summary > h3 {
  margin: 0 0 10px 0;
}

/* Coupon input + button: make them feel like a unit */
#edit-sidebar-coupon-redemption-form input[type="text"] {
  width: 100%;
  box-sizing: border-box;
  margin: 0 0 8px 0;
}

#edit-sidebar-coupon-redemption-form .button {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  border-radius: 8px;
}

/* HIDE THIS STUFF IN THE ORDER SUMMARY */
.checkout-pane-order-summary .views-field-quantity,
.checkout-pane-order-summary .views-field-total-price__number {
  display: none;
}

/* Kill table chrome, keep content */
.checkout-pane-order-summary table.views-table {
  width: 100%;
  border: 0;
  border-collapse: collapse;
}
.checkout-pane-order-summary table.views-table td {
  border: 0;
  padding: 0;
  vertical-align: top;
}

/* Give the item block some breathing room */
.checkout-pane-order-summary .view-content {
  margin-top: 10px;
}

/* Layout the first row like: title/desc left, price right */
.checkout-pane-order-summary .views-table tbody tr {
	display: grid;
	grid-template-columns: 1fr auto;
	column-gap: 16px;
	padding: 12px 6px;
	border-bottom: 1px solid #e6e6e6;
	background: #ffffff;
}

/* left column (purchased entity) */
.checkout-pane-order-summary .views-field-purchased-entity {
  font-size: 14px;
  line-height: 1.35;
}
.checkout-pane-order-summary .views-field-purchased-entity .field--name-title {
  font-weight: 700;
  font-size: 15px;
  margin-bottom: 4px;
}

/* hide the extra labels inside the purchased entity cell (Title/Price/Access days/Plan Code labels) */
.checkout-pane-order-summary .views-field-purchased-entity .field__label {
  display: none;
}

/* style the “was” price line (your list price) */
.checkout-pane-order-summary .views-field-purchased-entity .field--name-price.field--type-commerce-price {
	margin-top: 6px;
	opacity: 0.65;
	text-decoration: line-through;
	font-size: 160%;
	font-weight: bold;
}

/* right column (line total) - the real charge */
.checkout-pane-order-summary .views-field-total-price__number-1,
.checkout-pane-order-summary .views-field-total-price {
  font-weight: 700;
  font-size: 15px;
  text-align: right;
  white-space: nowrap;
}

/* Subtotal / Total rows: clean, aligned */
.checkout-pane-order-summary .order-summary-total {
  margin-top: 12px;
}
.checkout-pane-order-summary .order-summary-total .field {
  display: flex;
  justify-content: space-between;
  padding: 6px 0;
}
.checkout-pane-order-summary .order-summary-total .field--name-total-price {
  font-weight: 800;
  border-top: 1px solid #e6e6e6;
  margin-top: 6px;
  padding-top: 10px;
}

/* If your promo label shows (e.g., Launch Discount: -$20.00), make it subtle */
.checkout-pane-order-summary .views-field-purchased-entity br + span,
.checkout-pane-order-summary .views-field-purchased-entity .field--name-adjustments {
  font-size: 13px;
  opacity: 0.8;
}

.commerce-checkout-flow .button--primary {
	background: linear-gradient(135deg, #0f4c5c 0%, #0b6b6f 100%);
	color: #ffffff;
	border: none;
	border-radius: 6px;
	padding: 14px 20px;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.4px;
	text-transform: none;
	width: 100%;
	cursor: pointer;
	transition: background 0.25s ease, transform 0.15s ease, box-shadow 0.15s ease;
}
#commerce-checkout-flow-multistep-default {
	margin-bottom: 100px;
}