/* ============================================
   PRODUCTS PAGE — SPECIFIC STYLES
   ============================================ */

/* HERO OVERRIDES */
.hero .hero-sub{
  font-size:clamp(2.5rem,6vw,4.5rem);
  font-weight:700;
  line-height:0.95;
  letter-spacing:-0.05em;
  color:#000;
  text-transform:uppercase;
  font-family:'Space Grotesk',sans-serif;
  margin-top:4px;
  background:#FFF300;
  display:inline-block;
  padding:4px 12px;
}
.hero .hero-desc{
  margin-top:24px;
  font-size:1rem;
  color:#000;
  max-width:560px;
  line-height:1.65;
  font-family:'IBM Plex Mono',monospace;
}

/* TIER HEADER */
.tier-header{
  margin:56px 0 24px;
  padding:12px 20px;
  background:#000;
  display:inline-block;
}
.tier-header h2{
  font-size:0.82rem;
  font-weight:700;
  color:#FFF300;
  letter-spacing:0.08em;
  text-transform:uppercase;
  font-family:'Space Grotesk',sans-serif;
  margin-bottom:0;
  line-height:1.4;
}
.tier-header .tier-price{
  font-size:0.72rem;
  color:#FFF;
  font-family:'IBM Plex Mono',monospace;
  font-weight:400;
}

/* PRODUCTS GRID */
.products-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-bottom:16px;
}
@media(max-width:700px){.products-grid{grid-template-columns:1fr}}

/* PRODUCT CARD */
.product-card{
  background:#FFF;
  border:3px solid #000;
  padding:28px;
  transition:all 0.2s;
  display:flex;
  flex-direction:column;
}
.product-card:hover{
  background:#FFF300;
}

/* SPECIAL CARD VARIANTS */
.product-card--bundle{
  background:#FFF300;
  grid-column:1 / -1;
}
.product-card--bundle:hover{
  background:#ffe600;
  transform:translateY(-2px);
  box-shadow:0 4px 0 #000;
}

.product-card--hero{
  background:#4643E8;
  color:#FFF;
  grid-column:1 / -1;
  padding:40px;
}
.product-card--hero:hover{
  background:#3a37d4;
  transform:translateY(-2px);
  box-shadow:0 4px 0 #000;
}
.product-card--hero .product-name{color:#FFF}
.product-card--hero .product-desc{color:#FFF}
.product-card--hero .product-includes li{color:#FFF}
.product-card--hero .product-price{color:#FFF300}
.product-card--hero .badge--coming{
  background:#FFF;color:#000;
}

.product-card--premium{
  grid-column:1 / -1;
  background:#000;
  color:#FFF;
}
.product-card--premium:hover{
  background:#FFF300;
  color:#000;
}
.product-card--premium .product-name{color:#FFF}
.product-card--premium .product-desc{color:#FFF}
.product-card--premium .product-includes li{color:#FFF}
.product-card--premium .product-price{color:#FFF300}
.product-card--premium:hover .product-name,
.product-card--premium:hover .product-desc,
.product-card--premium:hover .product-includes li,
.product-card--premium:hover .product-price{
  color:#000;
}
.product-card--premium:hover .badge{
  background:#000;color:#FFF300;
}
.product-card--premium:hover .product-cta,
.product-card--premium:hover .product-cta--waitlist,
.product-card--premium:hover .product-cta--premium-waitlist{
  background:#000;color:#FFF300;border-color:#000;
}

/* CARD INTERNALS */
.card-top{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  margin-bottom:12px;flex-wrap:wrap;
}

.product-name{
  font-size:1.05rem;
  font-weight:700;
  color:#000;
  text-transform:uppercase;
  letter-spacing:-0.01em;
  font-family:'Space Grotesk',sans-serif;
  margin:0;
  line-height:1.3;
}

/* BADGES */
.badge{
  display:inline-block;
  padding:4px 12px;
  font-size:0.65rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.06em;
  font-family:'Space Grotesk',sans-serif;
  border:2px solid #000;
  flex-shrink:0;
  white-space:nowrap;
}
.badge--available{
  background:#FFF300;color:#000;
}
.badge--coming{
  background:#000;color:#FFF;
}
.badge--value{
  background:#4643E8;color:#FFF;border-color:#000;
}
.badge--bestseller{
  background:#000;color:#FFF300;
}
.badge--main{
  background:#FFF300;color:#000;
}

/* PRODUCT PRICE */
.product-price{
  font-size:1.8rem;
  font-weight:700;
  color:#000;
  font-family:'Space Grotesk',sans-serif;
  margin:8px 0;
  letter-spacing:-0.03em;
}
.price-was{
  font-size:1rem;
  text-decoration:line-through;
  color:#666;
  font-weight:400;
  margin-left:8px;
}

.product-desc{
  font-size:0.88rem;
  color:#000;
  font-family:'IBM Plex Mono',monospace;
  margin-bottom:16px;
  line-height:1.6;
}

.product-includes{
  list-style:none;
  margin-bottom:20px;
  flex-grow:1;
}
.product-includes li{
  font-size:0.82rem;
  color:#000;
  font-family:'IBM Plex Mono',monospace;
  padding:4px 0;
  padding-left:20px;
  position:relative;
  line-height:1.5;
}
.product-includes li::before{
  content:'>';
  position:absolute;
  left:0;
  font-weight:700;
  color:inherit;
}

/* PRODUCT CTA */
.product-cta{
  display:inline-block;
  padding:14px 28px;
  font-size:0.78rem;
  font-weight:700;
  border:3px solid #000;
  cursor:pointer;
  transition:all 0.2s;
  font-family:'Space Grotesk',sans-serif;
  text-transform:uppercase;
  letter-spacing:0.02em;
  text-decoration:none;
  text-align:center;
  width:100%;
  background:#000;
  color:#FFF300;
}
.product-cta:hover{
  background:#4643E8;
  color:#FFF;
  border-color:#000;
}

.product-cta--waitlist{
  background:#FFF;
  color:#000;
}
.product-cta--waitlist:hover{
  background:#FFF300;
  color:#000;
}

.product-cta--bundle{
  background:#000;
  color:#FFF300;
}

.product-card--hero .product-cta--waitlist{
  background:#FFF;color:#000;border-color:#FFF;
}
.product-card--hero .product-cta--waitlist:hover{
  background:#FFF300;color:#000;border-color:#000;
}

.product-card--premium .product-cta--waitlist{
  background:#FFF300;color:#000;border-color:#FFF300;
}
.product-card--premium .product-cta--waitlist:hover{
  background:#FFF;color:#000;border-color:#000;
}
.product-cta--premium-waitlist{
  background:#FFF300;color:#000;border-color:#FFF300;
}

/* UPSELL PATH */
.upsell-path{
  margin:64px 0 48px;
}
.upsell-path h2{
  font-size:clamp(1.4rem,3vw,2rem);
  margin-bottom:32px;
  letter-spacing:-0.04em;
}
.path-track{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  position:relative;
}
@media(max-width:700px){
  .path-track{grid-template-columns:1fr 1fr;gap:16px}
}
@media(max-width:420px){
  .path-track{grid-template-columns:1fr}
}
.path-step{
  text-align:center;
  padding:28px 16px;
  border:3px solid #000;
  position:relative;
  background:#FFF;
  transition:all 0.2s;
}
.path-step:hover{background:#FFF300}
.path-step:hover .step-price,
.path-step:hover .step-name,
.path-step:hover .step-label{color:#000!important}
.path-step:not(:last-child){border-right:none}
@media(max-width:700px){
  .path-step:not(:last-child){border-right:3px solid #000}
}
.path-step .step-price{
  font-size:1.4rem;
  font-weight:700;
  font-family:'Space Grotesk',sans-serif;
  color:#000;
  letter-spacing:-0.03em;
}
.path-step .step-name{
  font-size:0.72rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  font-family:'Space Grotesk',sans-serif;
  margin-top:8px;
  color:#000;
}
.path-step .step-label{
  font-size:0.72rem;
  font-weight:400;
  font-family:'IBM Plex Mono',monospace;
  color:#666;
  margin-top:4px;
}
.path-arrow{
  position:absolute;
  right:-16px;
  top:50%;
  transform:translateY(-50%);
  font-size:1.2rem;
  font-weight:700;
  color:#000;
  z-index:2;
  background:#FFF;
  width:32px;
  height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:3px solid #000;
  font-family:'Space Grotesk',sans-serif;
}
/* PATH STEP VARIANTS */
.path-step--yellow{background:#FFF300}
.path-step--yellow .step-label{color:#000}
.path-step--indigo{background:#4643E8}
.path-step--indigo .step-price{color:#FFF300}
.path-step--indigo .step-name{color:#FFF}
.path-step--indigo .step-label{color:#FFF}
.path-step--indigo .path-arrow{background:#4643E8;color:#FFF;border-color:#FFF}
.path-step--black{background:#000}
.path-step--black .step-price{color:#FFF300}
.path-step--black .step-name{color:#FFF}
.path-step--black .step-label{color:#FFF300}

.path-step:hover .path-arrow{background:#FFF300;color:#000;border-color:#000}
@media(max-width:700px){.path-arrow{display:none}}

/* RESPONSIVE — PRODUCTS */
@media(max-width:640px){
  .hero h1{font-size:1.8rem}
  .hero .hero-sub{font-size:2.2rem}
  .product-card{padding:24px}
  .product-card--hero{padding:28px}
  .product-price{font-size:1.5rem}
}

/* ============================================
   PRODUCT LANDING PAGE STYLES
   ============================================ */

/* LANDING HERO */
.lp-price{
  font-size:clamp(2.5rem,5vw,4rem);font-weight:700;
  font-family:'Space Grotesk',sans-serif;color:#000;
  letter-spacing:-0.03em;margin:16px 0 8px;
}
.lp-price .lp-was{
  font-size:1rem;text-decoration:line-through;color:#666;font-weight:400;margin-left:8px;
}
.lp-format{
  font-size:0.82rem;color:#666;font-family:'IBM Plex Mono',monospace;margin-bottom:24px;
}

/* WHAT YOU GET */
.lp-section{margin:48px 0}
.lp-section-title{
  font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;
  color:#000;padding:8px 0;border-bottom:3px solid #000;margin-bottom:24px;
  font-family:'Space Grotesk',sans-serif;
}
.lp-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:640px){.lp-grid{grid-template-columns:1fr}}

.lp-feature{
  border:3px solid #000;padding:24px;transition:all 0.2s;
}
.lp-feature:hover{background:#FFF300}
.lp-feature .feat-num{
  font-size:0.7rem;font-weight:700;color:#FFF300;background:#000;
  display:inline-block;padding:4px 10px;margin-bottom:12px;
  font-family:'Space Grotesk',sans-serif;letter-spacing:0.04em;
}
.lp-feature h4{
  font-size:1rem;font-weight:700;text-transform:uppercase;
  font-family:'Space Grotesk',sans-serif;letter-spacing:-0.01em;
  margin-bottom:8px;color:#000;
}
.lp-feature p{
  font-size:0.85rem;color:#000;line-height:1.6;
  font-family:'IBM Plex Mono',monospace;
}

/* SAMPLE PROMPT */
.lp-sample{
  background:#F5F5F5;border:3px solid #000;padding:28px;margin:16px 0;
  position:relative;
}
.lp-sample::before{
  content:'SAMPLE';position:absolute;top:-1px;right:-1px;
  background:#4643E8;color:#FFF;font-size:0.65rem;font-weight:700;
  padding:4px 12px;font-family:'Space Grotesk',sans-serif;
  letter-spacing:0.06em;
}
.lp-sample p{
  font-size:0.85rem;color:#000;line-height:1.6;
  font-family:'IBM Plex Mono',monospace;
}
.lp-sample .sample-fade{
  background:linear-gradient(transparent, #F5F5F5);
  height:60px;position:absolute;bottom:0;left:0;right:0;
}

/* WHO IS IT FOR */
.lp-personas{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:640px){.lp-personas{grid-template-columns:1fr}}
.lp-persona{
  border-bottom:4px solid #FFF300;padding:20px 0;text-align:center;
}
.lp-persona .persona-icon{font-size:1.6rem;margin-bottom:8px}
.lp-persona .persona-title{
  font-size:0.85rem;font-weight:700;text-transform:uppercase;
  font-family:'Space Grotesk',sans-serif;color:#000;margin-bottom:4px;
}
.lp-persona .persona-desc{
  font-size:0.8rem;color:#666;font-family:'IBM Plex Mono',monospace;line-height:1.5;
}

/* CTA BOX */
.lp-cta{
  background:#000;border:3px solid #000;padding:48px;margin:48px 0;
  text-align:center;color:#FFF;
}
.lp-cta h2{color:#FFF300;margin-bottom:8px}
.lp-cta p{color:#FFF;margin-bottom:24px;font-size:0.95rem}
.lp-cta .lp-btn{
  display:inline-block;padding:16px 40px;background:#FFF300;color:#000;
  font-size:0.85rem;font-weight:700;text-transform:uppercase;
  font-family:'Space Grotesk',sans-serif;letter-spacing:0.02em;
  text-decoration:none;border:3px solid #FFF300;transition:all 0.2s;
}
.lp-cta .lp-btn:hover{background:#FFF;border-color:#FFF}

/* FAQ */
.lp-faq{margin:16px 0}
.lp-faq-item{border-bottom:2px solid #000;padding:20px 0}
.lp-faq-item:last-child{border-bottom:none}
.lp-faq-q{
  font-size:0.95rem;font-weight:700;color:#000;margin-bottom:8px;
  font-family:'Space Grotesk',sans-serif;text-transform:uppercase;
}
.lp-faq-a{
  font-size:0.85rem;color:#000;line-height:1.6;
  font-family:'IBM Plex Mono',monospace;
}

/* RELATED PRODUCTS */
.lp-related{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}
@media(max-width:640px){.lp-related{grid-template-columns:1fr}}
.lp-related-card{
  display:block;border:3px solid #000;padding:24px;
  text-decoration:none;color:#000;transition:all 0.2s;
}
.lp-related-card:hover{background:#FFF300}
.lp-related-card .rel-tag{
  font-size:0.65rem;font-weight:700;text-transform:uppercase;
  letter-spacing:0.06em;color:#FFF;background:#000;
  display:inline-block;padding:3px 10px;margin-bottom:8px;
  font-family:'Space Grotesk',sans-serif;
}
.lp-related-card h4{
  font-size:0.95rem;font-weight:700;text-transform:uppercase;
  font-family:'Space Grotesk',sans-serif;margin-bottom:4px;
}
.lp-related-card .rel-price{
  font-size:1.1rem;font-weight:700;font-family:'Space Grotesk',sans-serif;
}

/* PRODUCT ACTIONS (two buttons side by side) */
.product-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.product-cta--learn{
  background:transparent;color:#000;border:3px solid #000;
  text-align:center;
}
.product-cta--learn:hover{background:#000;color:#FFF300}

/* CONSULTATION CARD */
.consult-card{
  border:4px solid #4643E8;padding:40px;margin:48px 0;
  position:relative;overflow:hidden;
}
.consult-card::before{
  content:'';position:absolute;top:0;left:0;width:6px;height:100%;
  background:#4643E8;
}
.consult-card h3{
  font-size:clamp(1.2rem,3vw,1.6rem);font-weight:700;
  font-family:'Space Grotesk',sans-serif;text-transform:uppercase;
  letter-spacing:-0.02em;margin-bottom:8px;color:#000;
}
.consult-card .consult-price{
  font-size:clamp(2rem,4vw,3rem);font-weight:700;
  font-family:'Space Grotesk',sans-serif;color:#4643E8;
  margin-bottom:12px;
}
.consult-card p{
  font-size:0.9rem;color:#000;line-height:1.65;
  font-family:'IBM Plex Mono',monospace;max-width:640px;
  margin-bottom:16px;
}
.consult-card .consult-topics{
  list-style:none;padding:0;margin:0 0 24px;
  display:flex;flex-wrap:wrap;gap:8px;
}
.consult-card .consult-topics li{
  font-size:0.75rem;font-weight:700;text-transform:uppercase;
  font-family:'Space Grotesk',sans-serif;letter-spacing:0.04em;
  padding:6px 14px;border:2px solid #000;color:#000;
}
.consult-cta{
  display:inline-block;padding:14px 32px;background:#4643E8;color:#FFF;
  font-size:0.85rem;font-weight:700;text-transform:uppercase;
  font-family:'Space Grotesk',sans-serif;letter-spacing:0.02em;
  text-decoration:none;border:3px solid #4643E8;transition:all 0.2s;
}
.consult-cta:hover{background:#000;border-color:#000}

/* VAT NOTE */
.vat-note{
  font-size:0.72rem;color:#999;
  font-family:'IBM Plex Mono',monospace;
  text-align:center;margin:32px 0 0;
}

/* PRINT — PRODUCTS */
@media print{
  .product-card{border:1px solid #ddd;background:#f9f9f9}
  h1,h2{color:#111}
}
