/* post-op-care.css — GlowOS post-operative care page
   Extends theme.css design tokens (--bg, --fg, --accent, --muted, --border, --white) */

/* NAV */
.nav { display:flex; align-items:center; justify-content:space-between; padding:28px 64px; border-bottom:1px solid var(--border); }
.nav-mark { font-family:'Cormorant Garamond',serif; font-size:20px; font-weight:600; letter-spacing:0.04em; color:var(--fg); }
.nav-right { display:flex; align-items:center; gap:24px; }
.nav-link { font-size:12px; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted); text-decoration:none; transition:color 0.2s; }
.nav-link:hover { color:var(--fg); }
.nav-link--active { color:var(--fg); font-weight:500; }
.nav-tag { font-size:12px; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted); }

/* BUTTONS */
.btn-primary {
  display:inline-block; background:var(--fg); color:var(--bg);
  padding:14px 32px; font-size:12px; letter-spacing:0.1em; text-transform:uppercase;
  text-decoration:none; border:none; cursor:pointer; font-family:'DM Sans',sans-serif;
  font-weight:500; transition:background 0.2s, transform 0.15s;
}
.btn-primary:hover { background:var(--accent); transform:translateY(-1px); }
.btn-primary.btn-lg { padding:18px 48px; font-size:13px; }
.btn-outline {
  display:inline-block; background:transparent; color:var(--fg);
  padding:13px 31px; font-size:12px; letter-spacing:0.1em; text-transform:uppercase;
  text-decoration:none; border:1px solid var(--fg); cursor:pointer; font-family:'DM Sans',sans-serif;
  font-weight:400; transition:background 0.2s, color 0.2s;
}
.btn-outline:hover { background:var(--fg); color:var(--bg); }

/* HERO */
.hero { padding:96px 64px 80px; background:var(--bg); border-bottom:1px solid var(--border); }
.hero-inner { max-width:900px; margin:0 auto; }
.hero-eyebrow {
  display:flex; align-items:center; gap:12px;
  font-size:11px; letter-spacing:0.2em; text-transform:uppercase;
  color:var(--accent); font-weight:500; margin-bottom:32px;
}
.eyebrow-dot { width:8px; height:8px; border-radius:50%; background:var(--accent); }
.hero-headline {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(44px, 6vw, 80px);
  font-weight:300; line-height:1.08; letter-spacing:-0.02em;
  color:var(--fg); margin-bottom:32px;
}
.hero-headline em { font-style:italic; color:var(--accent); }
.hero-sub {
  font-size:18px; font-weight:300; color:var(--muted);
  max-width:560px; line-height:1.7; margin-bottom:48px;
}
.hero-actions { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.hero-actions-note { font-size:12px; color:var(--muted); }

/* STATS BAND */
.stats-band {
  background:var(--white); border-bottom:1px solid var(--border);
  padding:48px 64px;
}
.stats-inner { max-width:900px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--border); }
.stat-cell { background:var(--white); padding:40px 32px; display:flex; flex-direction:column; gap:8px; }
.stat-num {
  font-family:'Cormorant Garamond',serif;
  font-size:48px; font-weight:300; letter-spacing:-0.02em; color:var(--fg);
}
.stat-label { font-size:13px; color:var(--muted); line-height:1.5; }
.stat-sub { font-size:11px; color:var(--accent); letter-spacing:0.1em; text-transform:uppercase; }

/* SECTION BASE */
.section { padding:96px 64px; }
.section--alt { background:#F0EDE7; }
.section--dark { background:var(--fg); color:var(--bg); }
.section-inner { max-width:900px; margin:0 auto; }
.section-label {
  font-size:11px; letter-spacing:0.2em; text-transform:uppercase;
  color:var(--accent); font-weight:500; margin-bottom:20px;
}
.section-heading {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(32px, 4vw, 52px);
  font-weight:300; line-height:1.15; letter-spacing:-0.01em;
  color:var(--fg); margin-bottom:20px;
}
.section-heading--light { color:var(--bg); }
.section-sub { font-size:16px; color:var(--muted); max-width:580px; line-height:1.7; margin-bottom:0; }
.section-sub--light { color:rgba(247,244,239,0.65); }

/* TIMELINE */
.timeline { display:flex; flex-direction:column; gap:0; }
.timeline-item {
  display:grid; grid-template-columns:120px 1fr; gap:40px;
  padding:40px 0; border-bottom:1px solid var(--border);
  align-items:start;
}
.timeline-item:last-child { border-bottom:none; }
.timeline-phase { padding-top:4px; }
.phase-label { font-size:11px; letter-spacing:0.15em; text-transform:uppercase; color:var(--accent); font-weight:500; margin-bottom:8px; }
.phase-time { font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:300; color:var(--fg); }
.timeline-body {}
.timeline-title { font-family:'Cormorant Garamond',serif; font-size:24px; font-weight:400; color:var(--fg); margin-bottom:12px; }
.timeline-desc { font-size:15px; color:var(--muted); line-height:1.7; margin-bottom:20px; }
.timeline-checks { display:flex; flex-direction:column; gap:10px; }
.check-item { display:flex; align-items:flex-start; gap:10px; font-size:14px; color:var(--fg); }
.check-icon { color:var(--accent); font-size:16px; flex-shrink:0; padding-top:1px; }

/* DIRECT ACCESS SECTION */
.direct-access { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.direct-access-text {}
.direct-access-title { font-family:'Cormorant Garamond',serif; font-size:36px; font-weight:300; color:var(--fg); margin-bottom:16px; }
.direct-access-sub { font-size:15px; color:var(--muted); line-height:1.7; margin-bottom:32px; }
.direct-methods { display:flex; flex-direction:column; gap:20px; }
.method-item { display:flex; align-items:center; gap:16px; }
.method-icon { width:44px; height:44px; background:var(--bg); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
.method-label { font-size:14px; font-weight:500; color:var(--fg); }
.method-desc { font-size:12px; color:var(--muted); }

/* ESCALATION */
.escalation { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.escalation-steps { display:flex; flex-direction:column; gap:16px; }
.escalation-step { display:flex; align-items:flex-start; gap:16px; }
.escalation-num { width:32px; height:32px; border:1px solid var(--accent); display:flex; align-items:center; justify-content:center; font-size:13px; color:var(--accent); font-weight:500; flex-shrink:0; }
.escalation-text { font-size:15px; color:var(--fg); line-height:1.55; padding-top:5px; }
.escalation-text strong { font-weight:500; }
.escalation-note { background:var(--white); border:1px solid var(--border); padding:28px; }
.escalation-note-label { font-size:11px; letter-spacing:0.1em; text-transform:uppercase; color:var(--accent); margin-bottom:8px; font-weight:500; }
.escalation-note-text { font-size:14px; color:var(--muted); line-height:1.65; }

/* GP COORDINATION */
.gp-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:32px; }
.gp-card { background:var(--white); border:1px solid var(--border); padding:36px; }
.gp-card-icon { font-size:24px; color:var(--accent); margin-bottom:16px; }
.gp-card-title { font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:400; color:var(--fg); margin-bottom:10px; }
.gp-card-text { font-size:14px; color:var(--muted); line-height:1.65; }

/* COMMITMENT */
.commitment { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.commitment-headline { font-family:'Cormorant Garamond',serif; font-size:clamp(32px,4vw,48px); font-weight:300; line-height:1.2; color:var(--bg); }
.commitment-headline em { font-style:italic; color:var(--accent); }
.commitment-items { display:flex; flex-direction:column; gap:20px; }
.commitment-item { display:flex; align-items:center; gap:14px; }
.commitment-icon { font-size:20px; flex-shrink:0; }
.commitment-text { font-size:16px; color:rgba(247,244,239,0.85); }

/* CTA */
.cta { padding:96px 64px; background:var(--accent); }
.cta-inner { max-width:800px; margin:0 auto; text-align:center; }
.cta-eyebrow { font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--white); opacity:0.75; font-weight:500; margin-bottom:20px; }
.cta-headline { font-family:'Cormorant Garamond',serif; font-size:clamp(36px,5vw,60px); font-weight:300; line-height:1.1; color:var(--white); margin-bottom:20px; }
.cta-sub { font-size:16px; color:var(--white); opacity:0.85; max-width:500px; margin:0 auto 40px; line-height:1.65; }
.cta-actions { display:flex; justify-content:center; gap:16px; flex-wrap:wrap; }
.btn-white { display:inline-block; background:var(--white); color:var(--fg); padding:16px 40px; font-size:12px; letter-spacing:0.1em; text-transform:uppercase; text-decoration:none; font-weight:500; transition:background 0.2s; }
.btn-white:hover { background:var(--bg); }
.btn-ghost { display:inline-block; background:transparent; color:var(--white); padding:15px 39px; font-size:12px; letter-spacing:0.1em; text-transform:uppercase; text-decoration:none; border:1px solid rgba(255,255,255,0.5); font-weight:400; transition:border-color 0.2s, background 0.2s; }
.btn-ghost:hover { border-color:var(--white); background:rgba(255,255,255,0.1); }
.cta-privacy { font-size:12px; color:var(--white); opacity:0.6; margin-top:24px; }

/* FAQ */
.faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.faq-item { background:var(--white); border:1px solid var(--border); padding:28px; }
.faq-q { font-size:15px; font-weight:500; color:var(--fg); margin-bottom:10px; line-height:1.45; }
.faq-a { font-size:14px; color:var(--muted); line-height:1.65; }

/* FOOTER */
.footer { padding:48px 64px; border-top:1px solid var(--border); }
.footer-inner { max-width:900px; margin:0 auto; display:flex; flex-direction:column; gap:8px; }
.footer-brand { font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:600; letter-spacing:0.04em; }
.footer-sub { font-size:12px; color:var(--muted); }

/* RESPONSIVE */
@media (max-width: 768px) {
  .nav { padding:24px 28px; }
  .hero { padding:64px 28px 56px; }
  .hero-sub { font-size:16px; }
  .hero-actions { flex-direction:column; align-items:flex-start; }
  .stats-band { padding:40px 28px; }
  .stats-inner { grid-template-columns:1fr; }
  .section { padding:72px 28px; }
  .section-heading { font-size:32px; }
  .timeline-item { grid-template-columns:1fr; gap:12px; }
  .direct-access { grid-template-columns:1fr; gap:40px; }
  .escalation { grid-template-columns:1fr; gap:40px; }
  .gp-grid { grid-template-columns:1fr; }
  .commitment { grid-template-columns:1fr; gap:40px; }
  .cta { padding:72px 28px; }
  .faq-grid { grid-template-columns:1fr; }
  .footer { padding:40px 28px; }
}