/* ===== HERO (reuses skin-hero pattern) ===== */
.age-hero{
  background:linear-gradient(135deg,#1A1215 0%,#3B1A22 55%,#6B2D3E 100%);
  padding:140px 24px 70px;text-align:center;position:relative;overflow:hidden;
  border-radius:0 0 24px 24px;
}
.age-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 30% 50%,rgba(201,83,106,0.15),transparent 60%),radial-gradient(circle at 70% 30%,rgba(200,169,110,0.1),transparent 50%)}
.age-hero-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(201,83,106,0.2);border:1px solid rgba(201,83,106,0.35);padding:7px 18px;border-radius:30px;margin-bottom:22px;font-size:13px;font-weight:500;color:var(--primary-light);position:relative;z-index:1}
.age-hero-title{font-size:32px;font-weight:900;color:var(--white);line-height:1.2;margin-bottom:16px;position:relative;z-index:1}
.age-hero-title em{font-style:normal;background:linear-gradient(90deg,#C9536A,#C8A96E);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.age-hero-sub{font-size:16px;color:rgba(255,255,255,0.6);max-width:560px;margin:0 auto;line-height:1.8;position:relative;z-index:1}

/* ===== MAIN LAYOUT ===== */
.age-main{max-width:820px;margin:0 auto;padding:60px 24px 80px}

/* ===== BREADCRUMB (matches article page) ===== */
.breadcrumb-container{margin:0 0 50px 0;font-size:.82rem;width:100%}
.breadcrumb-list{
  display:flex;align-items:center;flex-wrap:nowrap;
  list-style:none;padding:0;margin:0;gap:6px;width:100%;
}
.breadcrumb-item{
  display:inline-flex;align-items:center;
  color:var(--text-muted,#a0a0a0);white-space:nowrap;flex-shrink:0;
}
.breadcrumb-item a{
  color:var(--muted);text-decoration:none;transition:color .3s ease;
  display:inline-flex;align-items:center;gap:4px;
}
.breadcrumb-item a:hover{color:#C8A96E}
.breadcrumb-item + .breadcrumb-item::before{
  content:"◀";font-size:.55rem;color:#C8A96E;margin-left:6px;
}
.breadcrumb-item.active{color:var(--primary-dark);font-weight:600}
.breadcrumb-home{display:flex;flex-shrink:0}

/* ===== TABS ===== */
.age-tabs{
  display:flex;gap:10px;background:var(--surface);border:1.5px solid var(--border);
  border-radius:18px;padding:6px;margin-bottom:28px;
  width: 55%;place-self: center;height: 60px;
}
.age-tab-btn{
  flex:1;border:none;background:transparent;cursor:pointer;
  padding:14px 10px;border-radius:14px;font-family:inherit;
  font-size:15px;font-weight:700;color:var(--muted);
  display:flex;align-items:center;justify-content:center;gap:8px;
  transition:var(--transition);
}
.age-tab-btn img{
  width:18px;height:18px;
  filter:none;transition:var(--transition);

}
.age-tab-btn.active img{
  filter:brightness(0) invert(1);
}
.age-tab-btn.active{
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  color:var(--white);box-shadow:0 6px 18px rgba(201,83,106,0.3);
}
.age-tab-panel{display:none}
.age-tab-panel.active{display:block;animation:fadeIn .4s ease}

/* ===== PROGRESS BAR ===== */
.age-progress-card{
  background:var(--primary-pale);border-radius:16px;padding:18px 22px;margin-bottom:22px;
}
.age-progress-top{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:12px;font-size:13px;font-weight:700;color:var(--primary-dark);
}
.age-progress-track{
  width:100%;height:8px;border-radius:10px;background:rgba(155,44,66,0.12);overflow:hidden;
}
.age-progress-fill{
  height:100%;border-radius:10px;width:0%;
  background:linear-gradient(90deg,var(--primary-dark),var(--primary));
  transition:width .45s cubic-bezier(.4,0,.2,1);
}

/* ===== NAV BUTTONS (prev / next-or-calculate) ===== */
.age-nav-buttons{display:flex;gap:12px;margin-top:8px}
.age-nav-buttons .btn-calc{flex:1;margin-top:0}
.btn-nav-prev{
  flex:0 0 110px;padding:15px;border-radius:16px;
  border:1.5px solid var(--border);background:var(--surface);color:var(--mid);
  font-family:inherit;font-weight:700;font-size:14px;cursor:pointer;transition:var(--transition);
}
.btn-nav-prev:hover:not(:disabled){border-color:var(--primary-light);color:var(--primary)}
.btn-nav-prev:disabled{opacity:.4;cursor:not-allowed}

/* ===== FORM CARD ===== */
.age-form-card{
  background:var(--white);border-radius:24px;padding:36px 32px;
  border:1.5px solid var(--border);
  box-shadow:0 8px 40px rgba(201,83,106,0.08);
  margin-bottom:24px;
}
.age-form-title{font-size:20px;font-weight:800;color:var(--dark);margin-bottom:6px}
.age-form-sub{font-size:13px;color:var(--muted);margin-bottom:28px;line-height:1.7}

/* Age input */
.age-input-group{margin-bottom:30px}
.age-input-label{font-size:14px;font-weight:700;color:var(--dark);margin-bottom:10px;display:block}
.age-number-input{
  width:100%;padding:14px 16px;border:1.5px solid var(--border);
  border-radius:14px;font-family:inherit;font-size:16px;color:var(--text);
  background:var(--surface);transition:var(--transition);
}
.age-number-input:focus{outline:none;border-color:var(--primary);background:var(--white)}

/* Question blocks */
.age-question{margin-bottom:26px}
.age-question-title{
  font-size:14.5px;font-weight:700;color:var(--dark);margin-bottom:12px;
  display:flex;align-items:flex-start;gap:8px;line-height:1.6;
}
.age-question-num{
  flex-shrink:0;width:22px;height:22px;border-radius:50%;
  background:var(--primary-pale);color:var(--primary);
  font-size:11.5px;font-weight:800;display:flex;align-items:center;justify-content:center;
}
.age-options{display:flex;flex-direction:column;gap:8px}
.age-option{
  position:relative;display:block;
}
.age-option input{position:absolute;opacity:0;inset:0;cursor:pointer;width:100%;height:100%}
.age-option-label{
  display:block;padding:12px 16px;border-radius:12px;
  border:1.5px solid var(--border);background:var(--surface);
  font-size:13.5px;color:var(--mid);cursor:pointer;
  transition:var(--transition);
}
.age-option input:checked + .age-option-label{
  border-color:var(--primary);background:var(--primary-pale);
  color:var(--primary-dark);font-weight:700;
}
.age-option-label:hover{border-color:var(--primary-light)}

/* Submit */
.btn-calc{
  width:100%;padding:15px;
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  color:var(--white);border:none;border-radius:16px;
  font-size:16px;font-weight:700;font-family:inherit;
  cursor:pointer;transition:all .3s;margin-top:8px;
  box-shadow:0 6px 20px rgba(201,83,106,0.3);
  display:flex;align-items:center;justify-content:center;gap:10px;
}
.btn-calc:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 28px rgba(201,83,106,0.4)}
.btn-calc:disabled{opacity:.55;cursor:not-allowed;transform:none}

.age-error-box{
  display:none;background:#fff5f5;border:1.5px solid #fca5a5;
  border-radius:14px;padding:14px 18px;margin-top:16px;
  font-size:13.5px;color:var(--primary-dark);text-align:center;
}

/* ===== RESULT ===== */
.age-result-card{
  display:none;background:var(--white);border-radius:24px;padding:40px 34px;
  border:1.5px solid rgba(201,83,106,0.2);
  box-shadow:0 8px 40px rgba(201,83,106,0.1);
  animation:fadeIn .5s ease;margin-bottom:24px;
}
@keyframes fadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

.age-result-hero{text-align:center;padding-bottom:26px;margin-bottom:26px;border-bottom:1px solid var(--border)}
.age-result-badge{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--primary-pale);color:var(--muted);
  font-size:12.5px;font-weight:700;padding:6px 16px;border-radius:20px;margin-bottom:16px;
}
.age-result-number{font-size:48px;font-weight:900;color:var(--primary);line-height:1}
.age-result-number span{font-size:18px;color:var(--muted);font-weight:600}
.age-result-delta{font-size:15px;color:var(--mid);margin-top:10px;font-weight:600}
.age-result-delta.good{color:#1f9d55}
.age-result-delta.warn{color:var(--primary-dark)}

.age-category-chip{
  display:inline-block;margin-top:14px;padding:8px 20px;border-radius:20px;
  font-size:13px;font-weight:800;
}
.age-category-chip.excellent{background:#e7f8ef;color:#1f9d55}
.age-category-chip.good{background:var(--primary-pale);color:var(--primary)}
.age-category-chip.moderate{background:var(--gold-light);color:#8B6A3E}
.age-category-chip.attention{background:var(--primary-pale);color:var(--primary-dark)}

/* Factor breakdown */
.age-factors-title{font-size:14.5px;font-weight:700;color:var(--dark);margin-bottom:14px}
.age-factor-row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:11px 14px;border-radius:12px;background:var(--surface);
  border:1px solid var(--border);margin-bottom:8px;font-size:13px;
}
.age-factor-name{color:var(--mid);flex:1}
.age-factor-value{font-weight:800;font-size:13px;white-space:nowrap}
.age-factor-value.pos{color:var(--primary-dark)}
.age-factor-value.neg{color:#1f9d55}
.age-factor-value.zero{color:var(--muted)}

/* Tips */
.age-tips{margin-top:26px}
.age-tip-item{
  display:flex;gap:10px;padding:12px 14px;background:var(--primary-pale);
  border-radius:12px;margin-bottom:8px;font-size:13.5px;color:var(--primary-dark);line-height:1.7;
}

/* CTA */
.age-result-cta{
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  border-radius:16px;padding:26px 30px;text-align:center;margin-top:28px;
}
.age-result-cta p{font-size:14.5px;color:rgba(255,255,255,0.85);margin-bottom:14px}
.btn-reserve-age{
  display:inline-block;background:var(--white);color:var(--primary);
  padding:12px 34px;border-radius:30px;font-size:14px;font-weight:700;
  text-decoration:none;transition:all .25s;
}
.btn-reserve-age:hover{background:var(--surface);transform:translateY(-1px)}

.btn-recalc{
  display:block;width:100%;text-align:center;margin-top:14px;
  background:none;border:1.5px solid var(--border);color:var(--muted);
  padding:12px;border-radius:14px;font-family:inherit;font-size:13.5px;
  font-weight:600;cursor:pointer;transition:var(--transition);
}
.btn-recalc:hover{border-color:var(--primary-light);color:var(--primary)}

/* Evidence / sources accordion */
.age-evidence{
  background:var(--white);border-radius:16px;border:1.5px solid var(--border);
  padding:0;margin-bottom:24px;overflow:hidden;
}
.age-evidence summary{
  cursor:pointer;list-style:none;padding:18px 22px;
  font-size:13.5px;font-weight:700;color:var(--dark);
  display:flex;align-items:center;gap:8px;direction:ltr;
}
.age-evidence summary::-webkit-details-marker{display:none}
.age-evidence-icon{
  width:18px;
  height:18px;
  flex-shrink:0;
  margin-right:auto;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  transition:transform .3s ease;
}

.age-evidence-icon::before{
  content:'';
  width:7px;
  height:7px;
  border-right:2px solid var(--primary);
  border-bottom:2px solid var(--primary);
  transform:rotate(45deg);    
  margin-top:-2px;
  transition:transform .3s ease;
}

.age-evidence[open] .age-evidence-icon::before{
  transform:rotate(-135deg);
  margin-top:2px;
}
.age-evidence[open] summary{border-bottom:1px solid var(--border)}
.age-evidence-body{padding:16px 22px 20px;font-size:12.5px;color:var(--muted);line-height:1.9}
.age-evidence-body ul{padding-inline-start:18px;margin-top:6px}
.age-evidence-body p{margin-bottom:14px}

.age-sources-title{
  font-size:13px;font-weight:800;color:var(--muted);
  margin:18px 0 8px;padding-bottom:4px;
  border-bottom:1px solid var(--border);
}

.age-sources-list{list-style:none;padding:0;margin:0 0 12px}
.age-sources-list li{
  background:var(--gold-light-x2);border:1px solid var(--border);
  border-radius:12px;padding:12px 14px;margin-bottom:8px;
  font-size:12.5px;line-height:1.7;
}
.age-sources-list li strong{color:var(--dark);display:block;margin-bottom:2px}
.age-sources-list li em{color:var(--muted);font-style:normal;font-size:12px}
.age-sources-list li a{
  color:var(--primary);text-decoration:underline;font-size:12px;
  word-break:break-all;
}
.age-sources-list li a:hover{text-decoration:underline}

.age-sources-note{
  margin-top:16px;padding:12px 14px;background:var(--primary-pale);
  border-radius:10px;font-size:12.5px;color:var(--primary-dark);
}

/* Disclaimer (reused pattern) */
.age-disclaimer{
  background:var(--white);border-radius:16px;padding:22px 26px;
  border:1.5px solid var(--primary-light);
  font-size:13px;color:var(--primary-dark);
  border-right:4px solid var(--primary-hover);
  line-height:1.7;text-align:center;
}
.age-disclaimer strong{color:var(--dark)}

.age-sources-list a{
  text-decoration: underline;
  color: var(--primary-dark);
}

/* Responsive */
@media(max-width:768px){
  .header{top:10px;width:calc(100% - 20px)}
  .navbar{padding:12px 20px}
  .age-hero{padding:120px 20px 52px}
  .age-hero-title{font-size:28px}
  .age-form-card,.age-result-card{padding:26px 20px}
  .age-result-number{font-size:38px}
  .age-tab-btn{font-size:13.5px;padding:12px 6px}
  .breadcrumb-container{
    overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;
    scrollbar-width:none;-ms-overflow-style:none;padding-bottom:4px;
    margin:0 0 25px 0;
  }
  .breadcrumb-container::-webkit-scrollbar{display:none}
  .breadcrumb-list{display:inline-flex;flex-wrap:nowrap;gap:6px}
  .breadcrumb-item{flex-shrink:0}
  .breadcrumb-item a,.breadcrumb-item.active{white-space:nowrap}
}
@media(max-width:480px){
  .age-tabs{width:100%}
  .age-hero-title{font-size:24px}
  .age-question-title{font-size:13.5px}
  
}