*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; font-size: 16px; overflow-x: hidden; }

/* CUSTOM CURSOR - gold tinted */
* { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M 0 0 L 0 16 L 4 12 L 7 18 L 9 17 L 6 11 L 11 11 Z' fill='%23C9A96E' stroke='%23080808' stroke-width='1'/%3E%3C/svg%3E") 0 0, default; }
a, button, .btn, .svc, .nav-cta, .chat-send { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M 0 0 L 0 16 L 4 12 L 7 18 L 9 17 L 6 11 L 11 11 Z' fill='%23E8D5B0' stroke='%23080808' stroke-width='1'/%3E%3C/svg%3E") 0 0, pointer; }

:root {
  --black: #FAFAF8;
  --off-black: #F0EDE6;
  --card-bg: #FFFFFF;
  --gold: #C9A96E;
  --gold-text: #8B6914;      /* text on light bg: 4.7:1 contrast ✅ AA */
  --gold-text-lg: #9E7820;   /* large text on light bg: 3.5:1 ✅ AA large */
  --gold-light: #E8D5B0;
  --gold-dim: rgba(201,169,110,0.15);
  --cream: #1A1817;
  --cream-mid: rgba(26,24,23,0.96);
  --cream-dim: rgba(26,24,23,0.84);
  --text-muted: #3D352C;
  --border: rgba(201,169,110,0.22);
  --pad: 72px;
  /* Unified type scale — min 13px for UI, 14px for supporting copy */
  --text-xs: .8125rem;   /* 13px — labels, nav, tags */
  --text-sm: .875rem;    /* 14px — descriptions, FAQ, cards */
  --text-base: 1rem;     /* 16px — body */
  --text-lg: 1.0625rem;  /* 17px — lead paragraphs */
  --leading-tight: 1.45;
  --leading-normal: 1.65;
  --leading-relaxed: 1.8;
}

body {
  background: var(--black);
  color: var(--cream);
  font-family: 'Jost', sans-serif;
  font-weight: 300;
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

.caption {
  font-size: var(--text-xs);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-muted);
  opacity: .85;
  margin-top: 8px;
  line-height: var(--leading-normal);
}

/* NOISE */
body::before { content:''; position:fixed; inset:0; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E"); pointer-events:none; z-index:1; }

/* NAV */
nav { position:fixed; top:0; left:0; right:0; z-index:100; padding:26px var(--pad); display:flex; align-items:center; justify-content:space-between; background:linear-gradient(to bottom,rgba(250,250,248,.97) 70%,transparent); border-bottom:1px solid var(--border); }
.logo { font-family:'Cormorant Garamond',serif; font-weight:300; font-size:1.05rem; letter-spacing:.38em; color:var(--gold-text); text-decoration:none; }
.logo em { color:var(--cream-dim); font-style:normal; }
.nav-links { display:flex; align-items:center; gap:36px; }
.nav-links a { font-size:var(--text-xs); letter-spacing:.18em; text-transform:uppercase; color:rgba(26,24,23,0.78); text-decoration:none; transition:color .3s; }
.nav-links a:hover { color:var(--gold); }
.nav-phone { font-size:var(--text-xs); letter-spacing:.08em; color:var(--gold-text); text-decoration:none; opacity:.85; transition:opacity .3s; }
.nav-phone:hover { opacity:1; }
.nav-cta { font-size:var(--text-xs); letter-spacing:.16em; text-transform:uppercase; color:#1A1817 !important; background:var(--gold); padding:12px 26px; transition:background .3s !important; }
.nav-cta:hover { background:var(--gold-light) !important; }

/* SECTIONS */
section { padding: 110px var(--pad); position:relative; }
.divider { height:1px; background:linear-gradient(to right,transparent,var(--border),transparent); margin:0 var(--pad); }

/* LABELS */
.label { font-size:var(--text-xs); letter-spacing:.28em; text-transform:uppercase; color:var(--gold-text); margin-bottom:36px; display:flex; align-items:center; gap:14px; font-weight: 400; }
.label::before { content:''; width:28px; height:1px; background:var(--gold); opacity:.5; }

/* HEADINGS */
.h-display { font-family:'Cormorant Garamond',serif; font-weight:400; font-size:clamp(3rem,6.5vw,6rem); line-height:1.05; }
.h-section { font-family:'Cormorant Garamond',serif; font-weight:400; font-size:clamp(2rem,4vw,3.4rem); line-height:1.1; margin-bottom:20px; }
.h-section em, .h-display em { font-style:italic; color:var(--gold-text-lg); }
.body-text { font-size:var(--text-lg); line-height:var(--leading-relaxed); color:var(--cream-mid); max-width:540px; font-weight:400; }

/* BUTTONS */
.btn { display:inline-block; font-family:'Jost',sans-serif; font-size:var(--text-xs); font-weight:500; letter-spacing:.16em; text-transform:uppercase; text-decoration:none; transition:all .35s ease; position:relative; overflow:hidden; }
.btn-gold { color:#1A1817; background:var(--gold); padding:15px 42px; }
.btn-gold::after { content:''; position:absolute; inset:0; background:var(--gold-light); transform:translateX(-100%); transition:transform .35s ease; }
.btn-gold:hover::after { transform:translateX(0); }
.btn-gold span { position:relative; z-index:1; }
.btn-outline { color:var(--cream-mid); border:1px solid rgba(26,24,23,.2); padding:14px 36px; }
.btn-outline:hover { border-color:var(--gold); color:var(--gold); }

/* REVEAL */
.reveal { opacity:1; transform:translateY(0); transition:opacity .8s ease,transform .8s ease; }
.reveal.pre { opacity:0; transform:translateY(28px); }
.reveal.in { opacity:1 !important; transform:translateY(0) !important; }

/* ─── HERO ─── */
.hero { min-height:100vh; display:flex; flex-direction:column; justify-content:center; padding-top:130px; padding-bottom:80px; overflow:hidden; }
.hero-lines { position:absolute; inset:0; pointer-events:none; }
.hero-lines span { position:absolute; top:0; bottom:0; width:1px; background:linear-gradient(to bottom,transparent,var(--border) 30%,var(--border) 70%,transparent); }
.hero-lines span:nth-child(1) { right:8%; }
.hero-lines span:nth-child(2) { right:36%; opacity:.3; }
.hero-eyebrow { font-size:var(--text-xs); letter-spacing:.22em; text-transform:uppercase; color:var(--gold-text); margin-bottom:28px; display:flex; align-items:center; gap:14px; animation:fadeUp .9s ease both; animation-delay:.1s; opacity:1; font-weight: 400; }
.hero-eyebrow::before { content:''; width:36px; height:1px; background:var(--gold); opacity:.6; }
.hero h1 { margin-bottom:14px; animation:fadeUp .9s ease both; animation-delay:.25s; }
.hero-sub { font-family:'Cormorant Garamond',serif; font-style:italic; font-weight:400; font-size:clamp(1rem,1.8vw,1.4rem); color:rgba(26,24,23,0.78); max-width:520px; margin-bottom:52px; line-height:1.65; animation:fadeUp .9s ease both; animation-delay:.4s; }
.hero-actions { display:flex; align-items:center; gap:36px; flex-wrap:wrap; animation:fadeUp .9s ease both; animation-delay:.55s; }
.hero-scroll { position:absolute; bottom:38px; left:var(--pad); display:flex; align-items:center; gap:12px; font-size:var(--text-xs); letter-spacing:.18em; text-transform:uppercase; color:var(--text-muted); animation:fadeUp .9s ease both; animation-delay:.8s; }
.scroll-bar { width:44px; height:1px; background:var(--text-muted); overflow:hidden; position:relative; }
.scroll-bar::after { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:var(--gold); animation:slide 2.2s ease infinite 1.8s; }

/* ─── STATS ─── */
.stats { padding:44px var(--pad); border-top:1px solid var(--border); border-bottom:1px solid var(--border); display:grid; grid-template-columns:repeat(4,1fr); }

/* ─── LIVE TICKER ─── */
.live-ticker { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:0; border-bottom:1px solid var(--border); overflow:hidden; }
.lt-count-wrap { padding:20px var(--pad) 20px 0; border-right:1px solid var(--border); display:flex; align-items:baseline; gap:10px; padding-left:var(--pad); }
.lt-count { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,3vw,2.6rem); font-weight:300; color:var(--gold-text-lg); line-height:1; }
.lt-count-label { font-size:var(--text-xs); letter-spacing:.1em; text-transform:uppercase; color:var(--gold-text); opacity:.7; font-weight:500; }
.lt-label { padding:20px var(--pad); font-size:var(--text-xs); letter-spacing:.14em; text-transform:uppercase; color:var(--text-muted); line-height:var(--leading-normal); }
@media (max-width:600px) { .live-ticker { grid-template-columns:1fr; } .lt-count-wrap { border-right:none; border-bottom:1px solid var(--border); padding-right:var(--pad); } }

/* ─── BENEFITS STRIP ─── */
.benefits-strip { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--border); }
.benefit-item { background:var(--black); padding:44px var(--pad); position:relative; overflow:hidden; transition:background .35s; }
.benefit-item::before { content:''; position:absolute; top:0; left:0; width:3px; height:0; background:var(--gold); transition:height .45s ease; }
@media (hover:hover) { .benefit-item:hover::before { height:100%; } .benefit-item:hover { background:var(--off-black); } }
.bi-num { font-family:'Cormorant Garamond',serif; font-size:.7rem; color:var(--gold-text); opacity:.45; letter-spacing:.2em; margin-bottom:18px; }
.bi-title { font-family:'Cormorant Garamond',serif; font-size:clamp(1.2rem,2vw,1.55rem); font-weight:300; color:var(--cream); margin-bottom:12px; line-height:1.25; }
.bi-desc { font-size:var(--text-sm); color:var(--text-muted); line-height:var(--leading-relaxed); font-weight:400; max-width:300px; }
@media (max-width:960px) { .benefits-strip { grid-template-columns:1fr; } .benefit-item { padding:36px var(--pad); } .bi-desc { max-width:none; text-align:center; } .bi-title { text-align:center; } .bi-num { text-align:center; } }
.stat { padding:0 36px; border-right:1px solid var(--border); }
.stat:first-child { padding-left:0; }
.stat:last-child { border-right:none; }
.stat-n { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,3.5vw,3rem); font-weight:300; color:var(--gold-text-lg); line-height:1; margin-bottom:8px; }
.stat-l { font-size:var(--text-xs); letter-spacing:.12em; text-transform:uppercase; color:var(--text-muted); line-height:var(--leading-normal); font-weight: 400; }

/* ─── PROBLEM ─── */
.problem { background:var(--off-black); }
.problem-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.problem-points { display:flex; flex-direction:column; gap:0; margin-top:40px; }
.problem-point { padding:22px 0; border-bottom:1px solid var(--border); display:flex; gap:18px; align-items:flex-start; }
.problem-point:first-child { border-top:1px solid var(--border); }
.pp-icon { color:var(--gold); font-size:.9rem; flex-shrink:0; margin-top:2px; opacity:.7; }
.pp-title { font-size:var(--text-sm); letter-spacing:.04em; margin-bottom:6px; color:var(--cream); font-weight: 500; }
.pp-desc { font-size:var(--text-sm); color:var(--text-muted); line-height:var(--leading-relaxed); font-weight:400; }
.problem-visual { position:relative; }
.pv-card { background:var(--card-bg); border:1px solid var(--border); padding:32px; margin-bottom:16px; position:relative; }
.pv-card::before { content:''; position:absolute; top:0; left:0; width:3px; height:0; background:var(--gold); transition:height .5s ease; }
.pv-card:hover::before { height:100%; }
.pv-label { font-size:var(--text-xs); letter-spacing:.18em; text-transform:uppercase; color:var(--text-muted); margin-bottom:12px; font-weight: 400; }
.pv-value { font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:300; color:var(--gold-text-lg); line-height:1; margin-bottom:6px; }
.pv-sub { font-size:var(--text-sm); color:var(--cream-mid); line-height:var(--leading-relaxed); }

/* ─── SERVICES ─── */
.services-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-top:72px; background:var(--border); }
.svc-full { display: flex; align-items: center; gap: 48px; flex-wrap: wrap; border-top: 1px solid var(--border); margin-top: 1px; }
.svc-full .svc-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.3rem, 2.2vw, 1.8rem); font-weight: 300; margin-bottom: 0; white-space: nowrap; }
.svc-full .svc-desc { flex: 1; margin-bottom: 0; min-width: 260px; }
.svc-full .svc-n { margin-bottom: 0; }
@media (max-width: 960px) { .svc-full { flex-direction: column; align-items: flex-start; gap: 16px; } .svc-full .svc-title { white-space: normal; } }
.svc { background:var(--black); padding:48px 44px; position:relative; overflow:hidden; transition:background .4s; }
.svc:hover { background:#F5F2EC; }
.svc::before { content:''; position:absolute; top:0; left:0; width:3px; height:0; background:var(--gold); transition:height .45s ease; }
.svc:hover::before { height:100%; }
.svc-n { font-family:'Cormorant Garamond',serif; font-size:.75rem; color:var(--gold-text); opacity:.55; margin-bottom:24px; letter-spacing:.15em; }
.svc-title { font-family:'Cormorant Garamond',serif; font-size:clamp(1.3rem,2.2vw,1.8rem); font-weight:300; margin-bottom:14px; line-height:1.25; }
.svc-desc { font-size:var(--text-sm); line-height:var(--leading-relaxed); color:var(--text-muted); margin-bottom:24px; font-weight:400; }
.kel-note { font-size:var(--text-sm); color:var(--gold-text); border:1px solid var(--gold-dim); padding:14px 20px; margin-top:20px; display:inline-block; line-height:var(--leading-normal); letter-spacing:.02em; max-width: 640px; }
.tag { display:inline-block; font-size:var(--text-xs); letter-spacing:.14em; text-transform:uppercase; color:var(--gold-text); border:1px solid rgba(201,169,110,.25); padding:6px 14px; }

/* ─── HOW ─── */
.how-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:40px; margin-top:72px; position:relative; }
.how-steps::before { content:''; position:absolute; top:22px; left:calc(12.5% + 20px); right:calc(12.5% + 20px); height:1px; background:linear-gradient(to right,var(--gold-dim),var(--gold-dim)); }
.step { position:relative; }
.step-dot { width:44px; height:44px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; margin-bottom:24px; background:var(--black); position:relative; z-index:1; }
.step-dot-inner { width:8px; height:8px; background:var(--gold); border-radius:50%; }
.step-num { font-family:'Cormorant Garamond',serif; font-size:2.6rem; font-weight:300; color:rgba(201,169,110,.1); line-height:1; position:absolute; top:-8px; right:0; }
.step-title { font-family:'Cormorant Garamond',serif; font-size:1.15rem; font-weight:400; margin-bottom:10px; }
.step-desc { font-size:var(--text-sm); line-height:var(--leading-relaxed); color:var(--text-muted); font-weight:400; }

/* ─── AI ─── */
.ai-section { background:var(--off-black); }
.ai-inner { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; }
.ai-features { margin-top:44px; display:flex; flex-direction:column; }
.ai-feat { padding:22px 0; border-bottom:1px solid var(--border); display:flex; gap:18px; }
.ai-feat:first-child { border-top:1px solid var(--border); }
.af-icon { color:var(--gold); flex-shrink:0; font-size:.85rem; margin-top:2px; }
.af-title { font-size:var(--text-sm); letter-spacing:.04em; margin-bottom:6px; font-weight: 500; }
.af-desc { font-size:var(--text-sm); color:var(--text-muted); line-height:var(--leading-relaxed); font-weight:400; }

/* CHATBOT PLACEHOLDER */
.chatbot-wrap { position:relative; }
.chatbot-window { background:var(--card-bg); border:1px solid var(--border); overflow:hidden; }
.chat-header { background:#EDE9E2; padding:16px 20px; display:flex; align-items:center; gap:12px; border-bottom:1px solid var(--border); }
.chat-dot { width:8px; height:8px; background:var(--gold); border-radius:50%; animation:pulse 2s ease infinite; }
.chat-title { font-size:var(--text-xs); letter-spacing:.16em; text-transform:uppercase; color:var(--cream-mid); }
.chat-status { font-size:var(--text-xs); color:var(--gold-text); margin-left:auto; letter-spacing:.08em; }
.chat-body { padding:24px 20px; display:flex; flex-direction:column; gap:14px; min-height:320px; }
.msg { max-width:82%; padding:14px 18px; font-size:var(--text-sm); line-height:var(--leading-normal); }
.msg-patient { background:#EDE9E2; border:1px solid var(--border); color:var(--cream-mid); align-self:flex-start; }
.msg-ai { background:rgba(201,169,110,.08); border:1px solid rgba(201,169,110,.18); color:var(--cream); align-self:flex-end; }
.msg-role { font-size:var(--text-xs); letter-spacing:.14em; text-transform:uppercase; margin-bottom:6px; }
.msg-patient .msg-role { color:var(--text-muted); }
.msg-ai .msg-role { color:var(--gold-text); text-align:right; }
.msg-time { font-size:var(--text-xs); color:var(--text-muted); margin-top:6px; }
.msg-ai .msg-time { text-align:right; }
.chat-input-bar { padding:14px 20px; border-top:1px solid var(--border); display:flex; align-items:center; gap:12px; }
.chat-input-fake { flex:1; background:#EDE9E2; border:1px solid var(--border); padding:12px 14px; font-size:var(--text-sm); color:var(--text-muted); font-family:'Jost',sans-serif; font-style:italic; }
.chat-send { background:var(--gold); color:#1A1817; border:none; padding:11px 18px; font-size:var(--text-xs); letter-spacing:.12em; text-transform:uppercase; font-family:'Jost',sans-serif; font-weight: 500; }
.chatbot-badge { position:absolute; top:-14px; right:-14px; background:var(--gold); color:#1A1817; font-size:var(--text-xs); letter-spacing:.12em; text-transform:uppercase; padding:7px 14px; font-family:'Jost',sans-serif; font-weight:500; }

/* ─── ABOUT ─── */
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-top:72px; background:var(--border); }
.about-card { background:var(--black); padding:52px 48px; position:relative; overflow:hidden; }
.about-card::after { content:''; position:absolute; bottom:0; left:0; right:0; height:3px; background:linear-gradient(to right,var(--gold),transparent); transform:scaleX(0); transform-origin:left; transition:transform .5s ease; }
.about-card:hover::after { transform:scaleX(1); }
.about-avatar { width:64px; height:64px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; margin-bottom:28px; }
.avatar-initials { font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:300; color:var(--gold-text); }
.about-role { font-size:var(--text-xs); letter-spacing:.22em; text-transform:uppercase; color:var(--gold-text); margin-bottom:10px; }
.about-name { font-family:'Cormorant Garamond',serif; font-size:1.6rem; font-weight:300; margin-bottom:16px; }
.about-bio { font-size:var(--text-sm); line-height:var(--leading-relaxed); color:var(--text-muted); margin-bottom:24px; font-weight:400; }
.about-tags { display:flex; flex-wrap:wrap; gap:8px; }
.about-tag { font-size:var(--text-xs); letter-spacing:.12em; text-transform:uppercase; color:var(--cream-dim); border:1px solid var(--border); padding:6px 12px; }

/* ─── PRICING ─── */
.pricing-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-top:72px; background:var(--border); }
.price-card { background:var(--black); padding:56px 48px; position:relative; }
.price-card.featured { background:var(--card-bg); padding-top:72px; }
.price-badge { font-size:var(--text-xs); letter-spacing:.18em; text-transform:uppercase; color:#1A1817; background:var(--gold); padding:7px 16px; display:inline-block; position:absolute; top:-14px; left:48px; margin-bottom:0; font-weight: 500; }
.price-name { font-family:'Cormorant Garamond',serif; font-size:1.5rem; font-weight:300; margin-bottom:6px; }
.price-tag { font-size:var(--text-sm); color:var(--text-muted); margin-bottom:36px; line-height: var(--leading-normal); }
.price-amount { font-family:'Cormorant Garamond',serif; font-size:clamp(2.2rem,4vw,3rem); font-weight:300; color:var(--gold-text-lg); line-height:1; }
.price-amount sup { font-size:1rem; }
.price-period { font-size:var(--text-sm); color:var(--text-muted); margin-top:6px; margin-bottom:8px; }
.price-retainer { font-size:var(--text-sm); color:var(--cream-mid); margin-bottom:36px; padding-bottom:28px; border-bottom:1px solid var(--border); }
.price-retainer strong { color:var(--cream); font-weight:500; }
.price-list { list-style:none; display:flex; flex-direction:column; gap:12px; margin-bottom:40px; }
.price-list li { font-size:var(--text-sm); color:var(--cream-mid); display:flex; gap:12px; line-height:var(--leading-normal); }
.price-list li::before { content:'—'; color:var(--gold); opacity:.6; flex-shrink:0; }
.price-list li.price-list-intro { font-style:italic; opacity:0.6; font-size:0.85rem; margin-bottom:8px; }
.price-list li.price-list-intro::before { content:''; display:none; }

/* ─── CONTACT ─── */
.contact-section { background:var(--off-black); }
.contact-inner { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:start; }

.contact-form { display:flex; flex-direction:column; gap:0; }
.form-group { display:flex; flex-direction:column; gap:0; border-bottom:1px solid var(--border); }
.form-group:first-child { border-top:1px solid var(--border); }
.form-label { font-size:var(--text-xs); letter-spacing:.18em; text-transform:uppercase; color:var(--gold-text); padding:16px 0 8px; font-weight: 500; }
.form-input { background:transparent; border:none; outline:none; font-family:'Jost',sans-serif; font-size:var(--text-base); font-weight:300; color:var(--cream); padding:0 0 16px; width:100%; }
.form-input::placeholder { color:var(--text-muted); }
.form-submit { margin-top:32px; align-self:flex-start; }
.form-note { font-size:var(--text-sm); color:var(--text-muted); margin-top:16px; line-height:var(--leading-normal); }
.form-rodo { display:flex; align-items:flex-start; gap:12px; margin-top:28px; cursor:pointer; }
.form-rodo input[type="checkbox"] { appearance:none; -webkit-appearance:none; flex-shrink:0; width:18px; height:18px; border:1px solid var(--border); border-radius:3px; background:transparent; margin-top:2px; cursor:pointer; transition:border-color .2s, background .2s; }
.form-rodo input[type="checkbox"]:checked { background:var(--gold); border-color:var(--gold); background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 12 10' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 5l3.5 3.5L11 1' stroke='%231A1A1A' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:center; background-size:10px; }
.form-rodo input[type="checkbox"]:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
.form-rodo span { font-size:var(--text-sm); color:var(--text-muted); line-height:var(--leading-relaxed); }
.contact-info { padding-top:8px; }
.ci-title { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,3.5vw,3rem); font-weight:300; line-height:1.1; margin-bottom:20px; }
.ci-title em { font-style:italic; color:var(--gold-text-lg); }
.ci-body { font-size:var(--text-lg); line-height:var(--leading-relaxed); color:var(--cream-mid); margin-bottom:44px; }
.ci-details { display:flex; flex-direction:column; gap:20px; }
.ci-detail { display:flex; gap:16px; align-items:flex-start; }
.ci-d-label { font-size:var(--text-xs); letter-spacing:.16em; text-transform:uppercase; color:var(--text-muted); margin-bottom:4px; font-weight: 500; }
.ci-d-val { font-size:var(--text-base); color:var(--cream-mid); }
.ci-d-val a { color:var(--gold-text); text-decoration:none; border-bottom:1px solid rgba(201,169,110,.3); padding-bottom:1px; }

/* ─── FOOTER ─── */
footer { padding:36px var(--pad); border-top:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; }
.footer-logo { font-family:'Cormorant Garamond',serif; font-size:.85rem; letter-spacing:.38em; color:var(--gold-text); opacity:.6; }
.footer-copy { font-size:var(--text-xs); letter-spacing:.12em; text-transform:uppercase; color:var(--text-muted); line-height: var(--leading-normal); }
.footer-links { display:flex; gap:28px; flex-wrap: wrap; }
.footer-links a { font-size:var(--text-xs); letter-spacing:.12em; text-transform:uppercase; color:var(--text-muted); text-decoration:none; transition:color .3s; }
.footer-links a:hover { color:var(--gold); }

/* ─── CTA BANNER ─── */
.cta-banner { text-align:center; padding:120px var(--pad); position:relative; overflow:hidden; }
.cta-bg-text { position:absolute; font-family:'Cormorant Garamond',serif; font-size:clamp(5rem,16vw,16rem); font-weight:300; color:rgba(201,169,110,.07); top:50%; left:50%; transform:translate(-50%,-50%); white-space:nowrap; pointer-events:none; letter-spacing:.15em; }
.cta-banner h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.2rem,5vw,4.5rem); font-weight:300; margin-bottom:20px; position:relative; }
.cta-banner h2 em { font-style:italic; color:var(--gold-text-lg); }
.cta-banner p { font-size:var(--text-lg); color:var(--text-muted); margin-bottom:48px; line-height:var(--leading-relaxed); position:relative; }
.cta-actions { display:flex; align-items:center; justify-content:center; gap:24px; flex-wrap:wrap; position:relative; }

/* ─── PORTFOLIO ─── */
.portfolio-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:60px; }
.port-card { background:var(--card-bg); border:1px solid var(--border); overflow:hidden; }
.port-preview { padding:32px 32px 0; background:var(--off-black); }
.port-screen { background:#EDE9E2; border:1px solid var(--border); padding:16px; min-height:180px; }
.port-nav-mock { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; }
.port-logo-mock { width:60px; height:8px; background:rgba(201,169,110,.3); }
.port-btn-mock { width:40px; height:8px; background:rgba(201,169,110,.2); }
.port-hero-mock { margin-bottom:20px; display:flex; flex-direction:column; gap:8px; }
.port-line-mock { height:6px; background:rgba(26,24,23,.12); }
.w80 { width:80%; }
.w70 { width:70%; }
.w60 { width:60%; }
.w50 { width:50%; }
.w40 { width:40%; }
.w35 { width:35%; }
.port-blocks { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.port-block { height:40px; background:rgba(26,24,23,.05); border:1px solid var(--border); }
.port-info { padding:24px 28px; }
.port-status { font-size:.62rem; letter-spacing:.25em; text-transform:uppercase; color:var(--gold-text); margin-bottom:8px; }
.port-name { font-family:'Cormorant Garamond',serif; font-size:1.1rem; margin-bottom:14px; }
.port-tags { display:flex; gap:8px; flex-wrap:wrap; }

/* ─── TESTIMONIALS ─── */
.testi-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-top:60px; background:var(--border); }
.testi-card { background:var(--black); padding:48px 44px; }
.testi-cta-card { background:var(--card-bg); }
.testi-quote { font-family:'Cormorant Garamond',serif; font-size:4rem; color:var(--gold); opacity:.25; line-height:.8; margin-bottom:16px; }
.testi-text { font-size:.88rem; line-height:1.85; color:var(--cream-mid); margin-bottom:28px; font-style:italic; }
.testi-author { display:flex; align-items:center; gap:16px; }
.testi-avatar { width:40px; height:40px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-family:"Cormorant Garamond",serif; font-size:1rem; color:var(--gold-text); flex-shrink:0; }
.testi-name { font-size:.78rem; color:var(--cream); margin-bottom:3px; }
.testi-clinic { font-size:.65rem; color:var(--text-muted); letter-spacing:.08em; }

/* ─── FAQ ─── */
.faq-list { margin-top:56px; display:flex; flex-direction:column; max-width:820px; }
.faq-item { border-bottom:1px solid var(--border); }
.faq-item:first-child { border-top:1px solid var(--border); }
.faq-q { display:flex; justify-content:space-between; align-items:center; padding:22px 0; font-size:var(--text-base); color:var(--cream); gap:24px; cursor:pointer; transition:color .3s; background:none; border:none; width:100%; text-align:left; line-height: var(--leading-normal); }
.faq-q:hover { color:var(--gold); }
.faq-icon { font-size:1.2rem; color:var(--gold); flex-shrink:0; transition:transform .3s; font-weight:300; }
.faq-item.open .faq-icon { transform:rotate(45deg); }
.faq-a { font-size:var(--text-sm); line-height:var(--leading-relaxed); color:var(--text-muted); padding-bottom:22px; display:none; max-width:680px; font-weight:400; }
.faq-item.open .faq-a { display:block; }

/* ─── FAQ CATEGORIES ─── */
.faq-cats { margin-top:48px; max-width:860px; }
.faq-cat-label { font-size:var(--text-xs); letter-spacing:.22em; text-transform:uppercase; color:var(--gold-text); margin-top:40px; margin-bottom:0; display:flex; align-items:center; gap:12px; font-weight: 500; }
.faq-cat-label::before { content:''; width:20px; height:1px; background:var(--gold); opacity:.5; }
.faq-cats .faq-list { margin-top:0; max-width:100%; }

/* ─── ANIMATIONS ─── */
@keyframes fadeUp { from { opacity:0; transform:translateY(26px); } to { opacity:1; transform:translateY(0); } }
@keyframes slide { 0% { left:-100%; } 100% { left:100%; } }
@keyframes pulse { 0%,100% { opacity:1; } 50% { opacity:.3; } }

/* ─── BEFORE / AFTER ─── */
#efekty .ba-tabs-mobile { display:none; gap:0; margin-bottom:20px; border-bottom:1px solid #E8E0D4; }
#efekty .ba-tab-btn { flex:1; padding:12px 0; background:none; border:none; font-family:'Jost',sans-serif; font-size:var(--text-xs); font-weight:500; letter-spacing:0.08em; text-transform:uppercase; cursor:pointer; color:#999; border-bottom:2px solid transparent; transition:color .2s,border-color .2s; }
#efekty .ba-tab-btn.active { color:#1C1C1C; border-bottom-color:var(--gold); }
#efekty .ba-slider-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:52px; margin-bottom:48px; }
#efekty .ba-panel-wrapper { display:flex; flex-direction:column; }
#efekty .ba-panel-label { font-family:'Jost',sans-serif; font-size:var(--text-xs); font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:#999; margin-bottom:10px; display:flex; align-items:center; justify-content:space-between; }
#efekty .ba-panel-label.after { color:var(--gold); }
#efekty .ba-panel-container { position:relative; border-radius:12px; overflow:hidden; max-height:490px; pointer-events:none; user-select:none; flex:1; box-shadow:0 4px 24px rgba(0,0,0,0.06); }
#ba-panel-before .ba-panel-container { border:1px solid #E8E0D5; }
#ba-panel-after  .ba-panel-container { border:1px solid #B89B5E; }
#efekty .ba-slider-grid {
  align-items: stretch;
}
#efekty .ba-panel-wrapper {
  display: flex;
  flex-direction: column;
}
#efekty .ba-panel-container {
  flex: 1;
  max-height: none;
}
#efekty .badge { font-size:9px; font-weight:600; letter-spacing:0.05em; text-transform:uppercase; padding:4px 8px; border-radius:3px; }
#efekty .badge-bad { background:#cc4444; color:#fff; }
#efekty .badge-good { background:#2e7d4f; color:#fff; }
/* stara strona */
#efekty .old-site { background:#fff; font-family:Arial,Helvetica,sans-serif; font-size:12px; color:#333; overflow:hidden; border:1px solid #ddd; }
#efekty .old-topbar { background:#f5f5f5; border-bottom:1px solid #ddd; padding:5px 14px; font-size:9px; color:#888; display:flex; justify-content:space-between; align-items:center; }
#efekty .old-topbar a { color:#1a6ea8; text-decoration:underline; font-size:9px; }
#efekty .old-header { background:#fff; padding:12px 16px 0; display:flex; align-items:center; justify-content:space-between; }
#efekty .old-logo-text { font-family:Georgia,'Times New Roman',serif; font-size:16px; font-weight:bold; color:#1a1a1a; line-height:1.2; }
#efekty .old-logo-text span { display:block; font-size:8px; font-weight:normal; color:#888; font-family:Arial,sans-serif; letter-spacing:0.05em; text-transform:uppercase; }
#efekty .old-header-phone { font-family:Arial,sans-serif; font-size:14px; color:#1a6ea8; font-weight:bold; }
#efekty .old-header-phone span { display:block; font-size:8px; font-weight:normal; color:#aaa; text-align:right; }
#efekty .old-nav { background:#1a6ea8; padding:0 16px; display:flex; margin-top:10px; }
#efekty .old-nav-btn { font-family:Arial,sans-serif; font-size:10px; padding:8px 11px; color:#fff; white-space:nowrap; opacity:.9; border-right:1px solid rgba(255,255,255,.15); }
#efekty .old-nav-btn:first-child { background:rgba(0,0,0,.2); opacity:1; }
#efekty .old-hero-banner { background:#dce8f0; height:90px; display:flex; align-items:center; justify-content:center; border-bottom:3px solid #1a6ea8; }
#efekty .old-hero-banner-text { text-align:center; }
#efekty .old-hero-banner-text h2 { font-family:Georgia,serif; font-size:17px; color:#1a3a5c; font-weight:bold; margin-bottom:3px; }
#efekty .old-hero-banner-text p { font-size:10px; color:#555; }
#efekty .old-hero-banner-btn { display:inline-block; background:#1a6ea8; color:#fff; font-size:9px; padding:4px 12px; margin-top:4px; border-radius:2px; }
#efekty .old-content { display:grid; grid-template-columns:1fr 120px; }
#efekty .old-main { padding:10px 12px; border-right:1px solid #e5e5e5; }
#efekty .old-section-title { font-family:Georgia,serif; font-size:13px; color:#1a3a5c; border-bottom:2px solid #1a6ea8; padding-bottom:4px; margin-bottom:6px; font-weight:bold; }
#efekty .old-body-text { font-size:10px; line-height:1.6; color:#444; margin-bottom:8px; }
#efekty .old-services-list { list-style:none; margin:0 0 8px; padding:0; }
#efekty .old-services-list li { font-size:10px; color:#333; padding:3px 0; border-bottom:1px dotted #ddd; display:flex; justify-content:space-between; align-items:center; }
#efekty .old-services-list .price { color:#1a6ea8; font-weight:bold; font-size:10px; }
#efekty .old-sidebar { background:#f9f9f9; border-left:1px solid #eee; padding:8px; display:flex; flex-direction:column; gap:8px; }
#efekty .old-widget { background:#fff; border:1px solid #ddd; border-top:2px solid #1a6ea8; }
#efekty .old-widget-title { background:#f5f5f5; border-bottom:1px solid #ddd; padding:4px 7px; font-family:Arial,sans-serif; font-size:9px; font-weight:bold; color:#1a3a5c; text-transform:uppercase; letter-spacing:0.04em; }
#efekty .old-widget-body { padding:6px 7px; font-family:Arial,sans-serif; font-size:9px; color:#555; line-height:1.6; }
#efekty .old-widget-body strong { display:block; color:#1a6ea8; font-size:15px; font-family:Georgia,serif; margin:2px 0; }
#efekty .old-footer { background:#2c2c2c; color:#aaa; font-family:Arial,sans-serif; font-size:8px; padding:7px 14px; display:flex; justify-content:space-between; align-items:center; }
#efekty .old-footer a { color:#6ab0d8; text-decoration:none; }
/* nowa strona */
#efekty .new-site { background:#F4F7F5; overflow:hidden; font-family:'DM Sans',sans-serif; }
#efekty .new-header { background:#fff; padding:12px 18px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #D4E4DC; }
#efekty .new-logo-name { font-family:'Playfair Display',serif; font-size:20px; font-weight:400; color:#1C1C1C; letter-spacing:0.01em; line-height:1.2; }
#efekty .new-logo-sub { font-family:'DM Sans',sans-serif; font-size:9px; font-weight:400; color:#2D5A4A; letter-spacing:0.14em; text-transform:uppercase; margin-top:3px; }
#efekty .new-phone { font-family:'DM Sans',sans-serif; font-size:16px; font-weight:500; color:#2D5A4A; line-height:1.2; }
#efekty .new-phone-sub { font-family:'DM Sans',sans-serif; font-size:9px; color:#999; font-weight:300; }
#efekty .new-nav { display:flex; gap:0; border-bottom:1px solid #D4E4DC; background:#F4F7F5; padding:0 16px; overflow-x:auto; }
#efekty .new-nav-item { font-family:'DM Sans',sans-serif; font-size:10px; font-weight:500; letter-spacing:0.08em; text-transform:uppercase; color:#999; padding:9px 12px; border-bottom:2px solid transparent; white-space:nowrap; text-decoration:none; }
#efekty .new-nav-item.active { color:#1C1C1C; border-bottom-color:#2D5A4A; }
#efekty .new-hero { background:linear-gradient(160deg,#F4F7F5 60%,#E8F0EC 100%); padding:28px 20px 24px; position:relative; overflow:hidden; }
#efekty .new-hero-tag { display:inline-flex; align-items:center; gap:6px; font-family:'DM Sans',sans-serif; font-size:8px; letter-spacing:0.16em; text-transform:uppercase; color:#2D5A4A; margin-bottom:10px; position:relative; }
#efekty .new-hero-tag::before { content:''; display:block; width:18px; height:1px; background:#2D5A4A; }
#efekty .new-hero-title { font-family:'Playfair Display',serif; font-size:40px; font-weight:400; color:#1C1C1C; line-height:1.15; margin-bottom:10px; position:relative; z-index:1; }
#efekty .new-hero-title em { font-style:italic; color:#2D5A4A; font-weight:400; }
#efekty .new-hero-sub { font-family:'DM Sans',sans-serif; font-size:10px; color:#888; font-weight:300; line-height:1.6; margin-bottom:16px; max-width:300px; position:relative; z-index:1; }
#efekty .new-hero-actions { display:flex; align-items:center; gap:12px; position:relative; z-index:1; }
#efekty .new-btn-primary { background:#2D5A4A; color:#fff; font-family:'DM Sans',sans-serif; font-size:11px; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; padding:11px 24px; }
#efekty .new-btn-ghost { color:#999; font-family:'DM Sans',sans-serif; font-size:9px; letter-spacing:0.08em; display:flex; align-items:center; gap:5px; }
#efekty .new-btn-ghost::after { content:'→'; font-size:11px; }
#efekty .new-stats { display:flex; align-items:baseline; border-top:1px solid #D4E4DC; border-bottom:1px solid #D4E4DC; background:#fff; padding:20px 16px; gap:0; }
#efekty .new-stat-item { flex:1; text-align:center; padding:0 12px; }
#efekty .new-stat-number { font-family:'Jost',sans-serif; font-size:22px; font-weight:500; color:#1C1C1C; line-height:1; margin-bottom:6px; }
#efekty .new-stat-label { font-family:'DM Sans',sans-serif; font-size:9px; font-weight:500; letter-spacing:0.12em; color:#2D5A4A; text-transform:uppercase; margin-bottom:3px; }
#efekty .new-stat-sub { font-family:'DM Sans',sans-serif; font-size:10px; font-weight:400; color:#aaa; }
#efekty .new-stat-divider { width:1px; height:40px; background:#D4E4DC; flex-shrink:0; }
#efekty .new-services { padding:12px 20px 10px; background:#F4F7F5; }
#efekty .new-services-label { font-family:'DM Sans',sans-serif; font-size:8px; letter-spacing:0.2em; text-transform:uppercase; color:#2D5A4A; margin-bottom:8px; display:flex; align-items:center; gap:8px; }
#efekty .new-services-label::before { content:''; width:14px; height:1px; background:#2D5A4A; }
#efekty .new-services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
#efekty .new-svc-card { background:#fff; border:1px solid #D4E4DC; border-radius:4px; padding:10px 10px 8px; }
#efekty .new-svc-icon { width:24px; height:24px; background:rgba(45,90,74,.08); border-radius:4px; display:flex; align-items:center; justify-content:center; margin-bottom:7px; }
#efekty .new-svc-icon svg { width:12px; height:12px; fill:none; stroke:#2D5A4A; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
#efekty .new-svc-name { font-family:'DM Sans',sans-serif; font-size:9px; font-weight:500; color:#1C1C1C; margin-bottom:3px; line-height:1.3; }
#efekty .new-svc-price { font-family:'DM Sans',sans-serif; font-size:8px; color:#aaa; }
#efekty .new-testimonial { background:#1e3e33; padding:12px 20px; display:flex; gap:12px; align-items:flex-start; }
#efekty .new-testi-quote { font-family:'Playfair Display',serif; font-size:28px; color:#4A8A72; opacity:.6; line-height:.8; flex-shrink:0; }
#efekty .new-testi-text { font-family:'DM Sans',sans-serif; font-size:9px; color:rgba(255,255,255,.75); line-height:1.6; font-style:italic; }
#efekty .new-testi-author { font-family:'DM Sans',sans-serif; font-size:8px; color:#4A8A72; margin-top:5px; font-style:normal; letter-spacing:0.06em; }
#efekty .new-testi-stars { color:#4A8A72; font-size:9px; display:block; margin-bottom:3px; }
#efekty .chatbot-bubble { position:absolute; bottom:14px; right:14px; width:36px; height:36px; border-radius:50%; background:#2D5A4A; display:flex; align-items:center; justify-content:center; box-shadow:0 3px 12px rgba(45,90,74,.4); }
#efekty .chatbot-bubble svg { width:16px; height:16px; fill:none; stroke:#fff; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
/* panel caption */
#efekty .ba-panel-caption { margin-top:12px; font-family:'Jost',sans-serif; font-size:12px; color:#999; line-height:1.5; }
#efekty .ba-panel-caption.after { color:#2D5A4A; }
/* metryki */
#efekty .ba-metrics-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
#efekty .ba-metric-card { background:#fff; border:1px solid #E8E0D4; border-radius:8px; padding:20px; transition:box-shadow .25s ease; }
#efekty .ba-metric-card:hover { box-shadow:0 4px 16px rgba(201,169,110,.15); }
#efekty .ba-metric-label { font-family:'Jost',sans-serif; font-size:0.65rem; font-weight:400; text-transform:uppercase; letter-spacing:0.12em; color:#999; margin-bottom:14px; line-height:1.4; }
#efekty .ba-metric-values { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
#efekty .ba-metric-before { font-family:'Jost',sans-serif; font-size:18px; font-weight:400; color:#cc4444; text-decoration:line-through; text-decoration-color:#cc4444; opacity:0.45; }
#efekty .ba-metric-arrow { color:var(--gold); font-size:14px; font-weight:300; line-height:1; opacity:0.6; }
#efekty .ba-metric-after { font-family:'Jost',sans-serif; font-size:20px; font-weight:500; color:#1C1C1C; }
#efekty .ba-note { font-family:'Jost',sans-serif; font-size:var(--text-sm); color:var(--text-muted); margin-top:12px; line-height: var(--leading-normal); }

/* ─── REVIEWS ANIMATION ─── */
@keyframes aesthPhoneIn {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ─── CHATBOT WIDGET ─── */
#ac *,#ac *::before,#ac *::after{box-sizing:border-box;margin:0;padding:0;font-family:'Jost',sans-serif;}
#ac-btn{position:fixed;bottom:28px;right:28px;z-index:9999;width:58px;height:58px;border-radius:50%;background:#FAFAF8;border:1.5px solid #C9A96E;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 24px rgba(201,169,110,.25),0 2px 8px rgba(0,0,0,.1);transition:transform .2s,box-shadow .2s;outline:none;}
#ac-btn:hover{transform:scale(1.07);box-shadow:0 6px 32px rgba(201,169,110,.35),0 2px 8px rgba(0,0,0,.12);}
#ac-badge{position:absolute;top:-3px;right:-3px;width:14px;height:14px;background:#C9A96E;border-radius:50%;border:2px solid #FAFAF8;display:none;animation:acpulse 2s infinite;}
@keyframes acpulse{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}
#ac-win{position:fixed;bottom:100px;right:28px;z-index:9998;width:360px;height:540px;max-height:80vh;background:#FAFAF8;border:1px solid rgba(201,169,110,.22);border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 12px 48px rgba(0,0,0,.12),0 0 0 1px rgba(201,169,110,.1);transform:translateY(20px) scale(.96);opacity:0;pointer-events:none;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .25s ease;}
#ac-win.open{transform:translateY(0) scale(1);opacity:1;pointer-events:all;}
#ac-head{background:linear-gradient(135deg,#F0EDE6,#EDE6DA);border-bottom:1px solid rgba(201,169,110,.22);padding:14px 16px;flex-shrink:0;display:flex;align-items:center;gap:10px;}
.ac-av{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#C9A96E,#8a6f3e);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#FAFAF8;flex-shrink:0;}
.ac-hinfo{flex:1;}
.ac-hname{color:#1A1817;font-size:13px;font-weight:500;letter-spacing:.4px;}
.ac-hsub{color:#8A8178;font-size:10px;font-weight:300;letter-spacing:.6px;text-transform:uppercase;}
.ac-hdot{width:7px;height:7px;background:#4caf50;border-radius:50%;box-shadow:0 0 5px rgba(76,175,80,.5);animation:acdot 3s infinite;flex-shrink:0;}
@keyframes acdot{0%,90%,100%{opacity:1}95%{opacity:.3}}
#ac-close{background:none;border:none;color:#8A8178;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color .15s;}
#ac-close:hover{color:#C9A96E;}
#ac-msgs{flex:1;overflow-y:auto;padding:14px 12px 8px;display:flex;flex-direction:column;gap:8px;scrollbar-width:thin;scrollbar-color:rgba(201,169,110,.3) transparent;}
#ac-msgs::-webkit-scrollbar{width:3px;}
#ac-msgs::-webkit-scrollbar-thumb{background:rgba(201,169,110,.3);border-radius:2px;}
.ac-msg{max-width:88%;animation:acmsg .25s cubic-bezier(.34,1.4,.64,1) both;}
@keyframes acmsg{from{transform:translateY(6px);opacity:0}to{transform:translateY(0);opacity:1}}
.ac-msg.bot{align-self:flex-start;}
.ac-msg.usr{align-self:flex-end;}
.ac-bbl{padding:11px 22px;border-radius:16px;font-size:13px;line-height:1.55;font-weight:300;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;overflow:hidden;}
.ac-msg.bot .ac-bbl{background:#EDE9E2;border:1px solid rgba(201,169,110,.2);color:#1A1817;border-bottom-left-radius:4px;}
.ac-msg.usr .ac-bbl{background:linear-gradient(135deg,#C9A96E,#a07d45);color:#1A1817;font-weight:400;border-bottom-right-radius:4px;}
.ac-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 14px;background:#EDE9E2;border:1px solid rgba(201,169,110,.2);border-radius:13px;border-bottom-left-radius:4px;}
.ac-typing span{width:5px;height:5px;background:#C9A96E;border-radius:50%;opacity:.4;animation:acdots 1.2s infinite;}
.ac-typing span:nth-child(2){animation-delay:.2s;}
.ac-typing span:nth-child(3){animation-delay:.4s;}
@keyframes acdots{0%,60%,100%{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
#ac-rodo{display:flex;align-items:flex-start;gap:10px;padding:8px 14px;background:rgba(201,169,110,.07);border-top:1px solid rgba(201,169,110,.18);font-size:10.5px;color:#8A8178;line-height:1.5;flex-shrink:0;}
#ac-rodo span{flex:1;}
.ac-rodo-pp{background:none;border:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:600;cursor:pointer;padding:0;text-decoration:none;transition:opacity .15s;}
.ac-rodo-pp:hover{opacity:.7;}
#ac-foot{border-top:1px solid rgba(201,169,110,.18);padding:10px 10px;display:flex;gap:7px;align-items:center;background:#F5F2EC;flex-shrink:0;}
#ac-inp{flex:1;background:#FFFFFF;border:1px solid rgba(201,169,110,.22);border-radius:9px;padding:9px 12px;color:#1A1817;font-size:13px;font-family:'Jost',sans-serif;font-weight:300;outline:none;transition:border-color .14s;resize:none;min-height:42px;max-height:100px;}
#ac-inp::placeholder{color:#8A8178;}
#ac-inp:focus{border-color:#C9A96E;}
#ac-send{width:38px;height:38px;border-radius:9px;background:#C9A96E;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .14s,transform .1s;flex-shrink:0;}
#ac-send:hover:not(:disabled){background:#b8945a;}
#ac-send:active:not(:disabled){transform:scale(.94);}
#ac-send:disabled{opacity:.4;cursor:not-allowed;}
.ac-note{font-size:10px;color:#8A8178;text-align:center;padding:6px 12px 0;letter-spacing:.3px;}
@media(max-width:480px){#ac-win{width:calc(100vw - 24px);right:12px;bottom:88px;height:auto;max-height:55vh;}#ac-inp{font-size:16px;}}

/* ─── HAMBURGER ─── */
.hamburger { display:none; flex-direction:column; justify-content:center; gap:5px; background:none; border:none; padding:6px; width:36px; height:36px; flex-shrink:0; }
.hamburger-line { display:block; width:22px; height:1.5px; background:var(--cream); transform-origin:center; transition:transform .35s cubic-bezier(.4,0,.2,1), opacity .25s ease, width .35s ease; }

/* Hamburger → X */
.hamburger.open .hamburger-line:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
.hamburger.open .hamburger-line:nth-child(2) { opacity:0; width:0; }
.hamburger.open .hamburger-line:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }

/* ─── MOBILE MENU OVERLAY ─── */
.mobile-menu {
  position:fixed; top:68px; left:0; right:0; bottom:0; z-index:99;
  background:var(--black);
  border-top:1px solid var(--border);
  display:flex; flex-direction:column;
  opacity:0; pointer-events:none;
  transform:translateY(-12px);
  transition:opacity .35s ease, transform .35s cubic-bezier(.4,0,.2,1);
}
.mobile-menu.open {
  opacity:1; pointer-events:all; transform:translateY(0);
}
.mobile-menu-inner {
  display:flex; flex-direction:column; justify-content:space-between;
  flex:1; overflow-y:auto;
  padding:44px var(--pad) 52px;
}
.mobile-nav { display:flex; flex-direction:column; gap:0; }
.mobile-nav-link {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2rem,8vw,3rem);
  font-weight:300;
  color:var(--cream);
  text-decoration:none;
  padding:18px 0;
  border-bottom:1px solid var(--border);
  letter-spacing:.04em;
  transition:color .25s, padding-left .25s;
  display:block;
}
.mobile-nav-link:first-child { border-top:1px solid var(--border); }
.mobile-nav-link:hover { color:var(--gold); padding-left:8px; }
.mobile-menu-bottom {
  display:flex; flex-direction:column; gap:16px;
}
.mobile-phone {
  font-size:.75rem; letter-spacing:.2em; color:var(--gold-text);
  text-decoration:none; opacity:.8;
  font-family:'Jost',sans-serif;
}
.mobile-cta { width:100%; text-align:center; padding:16px; }

/* ─── MOBILE ─── */
@media (max-width:960px) {
  :root { --pad:28px; }
  nav { padding:22px var(--pad); }
  .nav-links { display:none; }
  .hamburger { display:flex; }
  .stats { grid-template-columns:1fr 1fr; gap:32px; }
  .stat { border-right:none; padding:0; }
  .problem-grid, .ai-inner, .contact-inner { grid-template-columns:1fr; gap:52px; }
  .services-grid, .pricing-grid, .about-grid { grid-template-columns:1fr; }
  .how-steps { grid-template-columns:1fr 1fr; }
  .how-steps::before { display:none; }
  .hero { padding-top:110px; }
  .chatbot-badge { display:none; }
  .portfolio-grid, .testi-grid { grid-template-columns:1fr; }
  #efekty .ba-tabs-mobile { display:flex; }
  #efekty .ba-slider-grid { grid-template-columns:1fr; gap:0; }
  #efekty .ba-panel-wrapper { display:none; }
  #efekty .ba-panel-wrapper.active { display:flex; }
  #efekty .ba-metrics-grid { grid-template-columns:repeat(2,1fr); gap:12px; width:100%; }
  #efekty .ba-metric-card  { min-width:0; width:100%; box-sizing:border-box; }
  #efekty .ba-metric-values { flex-wrap:wrap; gap:4px; }
  section { padding:72px var(--pad); }
}
@media (max-width:480px) {
  #efekty .ba-metrics-grid { grid-template-columns:1fr; }
  section { padding:56px var(--pad); }
  .how-steps { grid-template-columns:1fr; }
  .stats { grid-template-columns:1fr; }
  .stat { padding:0; }
  .form-input { font-size:1rem; }
}

/* ─── MOBILE CENTERING + BA OVERFLOW FIX ─── */
@media (max-width:960px) {

  /* Problem 1 (nowy): sekcje wypełniają pełną szerokość viewport */
  section, .hero, .problem { width:100%; box-sizing:border-box; }

  /* Problem 2: wyśrodkowanie treści sekcji na mobile */
  .label                { justify-content:center; }
  .h-section            { text-align:center; }
  .h-display            { text-align:center; }
  .hero-eyebrow         { justify-content:center; }
  .hero-sub             { text-align:center; margin-left:auto; margin-right:auto; max-width:100%; }
  .hero-actions         { justify-content:center; }
  .body-text            { text-align:center; margin-left:auto; margin-right:auto; max-width:100%; }
  .kel-note             { text-align:center; display:block; margin-left:auto; margin-right:auto; }
  .cta-banner p         { text-align:center; margin-left:auto; margin-right:auto; }
  .cta-actions          { justify-content:center; }

  /* sekcja problem — lewa kolumna (tekst) wyśrodkowana */
  .problem-points       { align-items:center; }
  .pp-title             { text-align:center; }
  .pp-desc              { text-align:center; }

  /* sekcja AI — lewa kolumna wyśrodkowana */
  .af-title, .af-desc   { text-align:center; }
  .ai-features          { align-items:center; }
  .ai-feat              { flex-direction:column; align-items:center; text-align:center; }

  /* kroki procesu */
  .step                 { text-align:center; }
  .step-dot             { margin:0 auto 24px; }

  /* kontakt */
  .ci-title             { text-align:center; }
  .ci-body              { text-align:center; margin-left:auto; margin-right:auto; }
  .ci-details           { align-items:center; }
  .ci-detail            { flex-direction:column; align-items:center; text-align:center; }

  /* Problem 2: sekcja "przed i po" — poziomy scroll */
  /* min-width:0 odblokowuje shrinkowanie grid item poniżej intrinsic width contentu */
  #efekty .ba-panel-wrapper   { min-width:0; overflow:hidden; }
  #efekty .ba-panel-container { width:100%; max-width:480px; margin:0 auto; overflow:hidden; }
  #efekty .old-site           { overflow:hidden; }
  #efekty .old-nav            { overflow-x:hidden; flex-wrap:wrap; }
  #efekty .new-site           { overflow:hidden; }
  /* nav tabs — ukryj pozycje 5+ które się nie mieszczą */
  #efekty .new-nav-item:nth-child(n+5) { display:none; }

  /* stats — 4 kolumny → 2×2 grid */
  #efekty .new-stats       { display:grid; grid-template-columns:1fr 1fr; gap:0; }
  #efekty .new-stat-divider { display:none; }
  #efekty .new-stat-item   { padding:12px 8px; border-bottom:1px solid #e8e8e8; }

  /* Problem 3: header nowej strony — numer telefonu nie mieści się */
  #efekty .new-header         { font-size:85%; gap:8px; padding:10px 12px; }
  #efekty .new-phone          { font-size:11px; white-space:nowrap; }
  #efekty .new-logo-name      { font-size:13px; }
  #efekty .new-logo-sub       { font-size:7px; letter-spacing:0.05em; }

  /* zabezpieczenie: sekcja nie powoduje horizontal scroll */
  #efekty             { overflow-x:hidden; }
}

/* ─── FOOTER PRIVACY LINK ─── */
.footer-pp-link{background:none;border:none;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;padding:0;text-decoration:none;transition:color .3s;}
.footer-pp-link:hover{color:var(--gold);}

/* ─── PRIVACY POLICY MODAL ─── */
#privacy-modal{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;padding:20px;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .22s,visibility .22s;}
#privacy-modal.pm-open{visibility:visible;opacity:1;pointer-events:all;}
.pm-overlay{position:absolute;inset:0;background:rgba(10,8,6,.72);backdrop-filter:blur(3px);}
.pm-box{position:relative;background:#FAFAF8;border:1px solid rgba(201,169,110,.22);border-radius:16px;width:100%;max-width:620px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 24px 80px rgba(0,0,0,.25);transition:transform .28s cubic-bezier(.34,1.4,.64,1);transform:translateY(16px) scale(.97);}
#privacy-modal.pm-open .pm-box{transform:none;}
.pm-head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(201,169,110,.18);flex-shrink:0;}
.pm-title{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:400;color:#1A1817;letter-spacing:.04em;}
.pm-close{background:none;border:none;color:#8A8178;cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s;}
.pm-close:hover{color:#1A1817;background:rgba(201,169,110,.12);}
.pm-body{overflow-y:auto;padding:24px;scrollbar-width:thin;scrollbar-color:rgba(201,169,110,.3) transparent;}
.pm-body::-webkit-scrollbar{width:4px;}
.pm-body::-webkit-scrollbar-thumb{background:rgba(201,169,110,.3);border-radius:2px;}
.pm-section{margin-bottom:24px;}
.pm-section h3{font-family:'Jost',sans-serif;font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text);font-weight:500;margin-bottom:10px;}
.pm-section p,.pm-section ul{font-size:var(--text-sm);color:#4A4540;line-height:var(--leading-relaxed);font-weight:300;}
.pm-section ul{padding-left:18px;display:flex;flex-direction:column;gap:4px;margin-top:6px;}
.pm-section a{color:var(--gold-text);text-underline-offset:2px;}
.pm-section a:hover{opacity:.75;}
.pm-updated{font-size:.65rem;color:#8A8178;text-align:right;margin-top:8px;letter-spacing:.1em;}
@media(max-width:480px){.pm-box{max-height:90vh;border-radius:12px;}}

/* ═══════════════════════════════════════════════════════════════
   TABS SECTION
   ═══════════════════════════════════════════════════════════════ */

/* Wrapper */
#tabs-section {
  position: relative;
}

/* ─── TAB NAV ─── */
.tabs-nav {
  position: sticky;
  top: 68px; /* wysokość głównego nav */
  z-index: 50;
  background: #FAFAF8;
  border-bottom: 1px solid rgba(201,169,110,.18);
  box-shadow: 0 2px 16px rgba(26,24,23,.05);
  transition: box-shadow .3s ease;
}
.tabs-nav.stuck {
  box-shadow: 0 4px 24px rgba(26,24,23,.09);
}
.tabs-nav-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--pad);
  display: flex;
  align-items: stretch;
  gap: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.tabs-nav-inner::-webkit-scrollbar { display: none; }

/* ─── TAB BUTTON ─── */
.tab-btn {
  flex-shrink: 0;
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 20px 28px;
  font-family: 'Jost', sans-serif;
  font-size: var(--text-xs);
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #5A5249;
  cursor: pointer;
  white-space: nowrap;
  transition: color .25s ease, border-color .25s ease;
  position: relative;
  outline: none;
  margin-bottom: -1px; /* sit flush on the border-bottom of nav */
}
.tab-btn:hover {
  color: var(--cream);
}
.tab-btn.active {
  color: var(--gold-text);
  border-bottom-color: var(--gold-text);
}
.tab-btn:focus-visible {
  outline: 2px solid var(--gold-text);
  outline-offset: -2px;
}

/* ─── TAB CONTENT ─── */
.tabs-content {
  /* No extra padding — inner sections carry their own */
}

/* ─── TAB PANEL ─── */
.tab-panel {
  display: none;
}
.tab-panel.active {
  display: block;
  animation: tabFadeIn .2s ease both;
}
@keyframes tabFadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* Sections inside panels keep natural section padding.
   The ai-section background still applies. */
.tab-panel > section {
  /* Inherits global: padding: 110px var(--pad) */
}

/* Divider between sections within the same panel */
.tab-panel > .divider {
  margin: 0 var(--pad);
}

/* ─── MOBILE ADJUSTMENTS ─── */
@media (max-width: 960px) {
  .tabs-nav {
    top: 64px;
  }
  .tabs-nav-inner {
    padding: 0 var(--pad);
    gap: 0;
  }
  .tab-btn {
    padding: 16px 20px;
    font-size: var(--text-xs);
  }
}
@media (max-width: 480px) {
  .tab-btn {
    padding: 14px 16px;
    font-size: var(--text-xs);
    letter-spacing: .1em;
  }
}
/* ─── REVIEWS SECTION ─── */
#reviews-section {
  background: var(--off-black);
  padding: 80px var(--pad);
}
#reviews-section h2,
#reviews-section h3,
#reviews-section p,
#reviews-section span {
  color: var(--cream);
}
.reviews-inner { max-width: 1100px; margin: 0 auto; }
.reviews-header { text-align: center; margin-bottom: 56px; }
.reviews-eyebrow {
  font-size: var(--text-xs);
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--gold-text);
  margin: 0 0 12px;
}
.reviews-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(2rem, 5vw, 3.25rem);
  font-weight: 400;
  margin: 0 0 16px;
  line-height: 1.15;
}
.reviews-lead {
  font-size: var(--text-lg);
  max-width: 480px;
  margin: 0 auto;
  line-height: var(--leading-relaxed);
  color: var(--cream-mid);
}
.reviews-flow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 60px;
  flex-wrap: wrap;
}
.reviews-steps { max-width: 320px; }
.reviews-step {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 28px;
}
.reviews-step:last-child { margin-bottom: 0; }
.reviews-step-num {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--off-black);
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-sm);
  font-weight: 500;
  color: var(--gold-text);
  flex-shrink: 0;
  margin-top: 2px;
}
.reviews-step-title {
  font-size: var(--text-base);
  font-weight: 500;
  margin: 0 0 6px;
  color: var(--cream);
}
.reviews-step-desc {
  font-size: var(--text-sm);
  margin: 0;
  line-height: var(--leading-relaxed);
  color: var(--text-muted);
}

/* ─── GUARANTEE STRIP (compact, no FAQ duplication) ─── */
.guarantee-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  margin-top: 48px;
  background: var(--border);
}
.guarantee-item {
  background: var(--black);
  padding: 28px 24px;
  text-align: center;
}
.guarantee-item strong {
  display: block;
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.35rem;
  font-weight: 400;
  color: var(--gold-text-lg);
  margin-bottom: 8px;
  line-height: 1.2;
}
.guarantee-item span {
  font-size: var(--text-sm);
  color: var(--text-muted);
  line-height: var(--leading-normal);
}
@media (max-width: 960px) {
  .guarantee-strip { grid-template-columns: 1fr 1fr; }
  .reviews-flow { gap: 40px; }
}
@media (max-width: 480px) {
  .guarantee-strip { grid-template-columns: 1fr; }
}

/* ═══════════════════════════════════════════════════════════════
   DARK MODE
   ═══════════════════════════════════════════════════════════════ */

.theme-toggle {
  background: none;
  border: 1px solid var(--border);
  color: var(--text-muted);
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color .3s, border-color .3s, background .3s;
  flex-shrink: 0;
}
.theme-toggle:hover {
  border-color: var(--gold);
  color: var(--gold);
  background: rgba(201,169,110,.08);
}
.theme-icon-sun  { display: none; }
.theme-icon-moon { display: block; }
[data-theme="dark"] .theme-icon-sun  { display: block; }
[data-theme="dark"] .theme-icon-moon { display: none; }

[data-theme="dark"] {
  --black:      #0F0E0C;
  --off-black:  #161410;
  --card-bg:    #1C1A17;
  --gold:       #C9A96E;
  --gold-light: #E8D5B0;
  --gold-dim:   rgba(201,169,110,0.15);
  --cream:      #F0EDE6;
  --cream-mid:  rgba(240,237,230,0.90);
  --cream-dim:  rgba(240,237,230,0.65);
  --text-muted: #A89880;
  --border:     rgba(201,169,110,0.18);
  --gold-text:    #C9A96E;      /* on dark bg gold is fine as-is (8.6:1) */
  --gold-text-lg: #C9A96E;
}
[data-theme="dark"] nav {
  background: linear-gradient(to bottom, rgba(15,14,12,.97) 70%, transparent);
}
[data-theme="dark"] .nav-links a {
  color: rgba(240,237,230,0.65);
}
[data-theme="dark"] .nav-links a:hover {
  color: var(--gold);
}
[data-theme="dark"] .nav-cta {
  color: #0F0E0C !important;
}
[data-theme="dark"] .btn-outline {
  border-color: rgba(240,237,230,0.2);
  color: var(--cream-mid);
}
[data-theme="dark"] .tabs-nav {
  background: #0F0E0C;
  border-bottom-color: rgba(201,169,110,.14);
}
[data-theme="dark"] .tabs-nav.stuck {
  box-shadow: 0 4px 24px rgba(0,0,0,.4);
}
[data-theme="dark"] .mobile-menu {
  background: var(--black);
}
[data-theme="dark"] #ac-win {
  background: #1C1A17;
  border-color: rgba(201,169,110,.22);
}
[data-theme="dark"] #ac-head {
  background: #161410;
  border-bottom-color: rgba(201,169,110,.15);
}
[data-theme="dark"] .ac-msg.bot .ac-bbl {
  background: #252219;
  border-color: rgba(201,169,110,.18);
  color: #F0EDE6;
}
[data-theme="dark"] #ac-rodo {
  background: rgba(201,169,110,.06);
  border-top-color: rgba(201,169,110,.14);
  color: #7A7068;
}
[data-theme="dark"] #ac-foot {
  background: #161410;
  border-top-color: rgba(201,169,110,.15);
}
[data-theme="dark"] #ac-inp {
  background: #0F0E0C;
  border-color: rgba(201,169,110,.2);
  color: #F0EDE6;
}
[data-theme="dark"] #ac-inp::placeholder {
  color: #6A6058;
}
[data-theme="dark"] .ac-typing {
  background: #252219;
  border-color: rgba(201,169,110,.18);
}
[data-theme="dark"] .pm-box {
  background: #1C1A17;
  border-color: rgba(201,169,110,.2);
}
[data-theme="dark"] .pm-head {
  border-bottom-color: rgba(201,169,110,.12);
}
[data-theme="dark"] .pm-title {
  color: #F0EDE6;
}
[data-theme="dark"] .pm-section p,
[data-theme="dark"] .pm-section ul {
  color: #A89880;
}
[data-theme="dark"] .form-input {
  color: #F0EDE6;
}
[data-theme="dark"] .form-rodo span {
  color: #7A7068;
}
[data-theme="dark"] .ac-hname {
  color: #F0EDE6;
}
[data-theme="dark"] .ac-hsub {
  color: var(--text-muted);
}
[data-theme="dark"] .hero-sub {
  color: var(--cream-dim);
}

[data-theme="dark"] #reviews-section {
  background: var(--off-black);
}
[data-theme="dark"] #ac-btn {
  background: #1C1A17;
  border-color: rgba(201,169,110,.35);
}
[data-theme="dark"] #ac-btn:hover {
  background: #252219;
}
[data-theme="dark"] #ac-badge {
  background: #C9A96E;
}
[data-theme="dark"] #ba-panel-before .ba-panel-container {
  background: #161410;
}
[data-theme="dark"] #ba-panel-after .ba-panel-container {
  background: #161410;
}

/* NOTE: #efekty .old-site and .new-site use intentionally
   hardcoded colors — they simulate real client websites.
   Do NOT add dark mode overrides for those elements. */

[data-theme="dark"] .svc:hover { background: var(--card-bg); }

[data-theme="dark"] .chat-header { background: #1C1A17; }
[data-theme="dark"] .msg-patient { background: #252219; border-color: rgba(201,169,110,.15); }
[data-theme="dark"] .chat-input-fake { background: #1C1A17; }

/* ─── PRICE SOCIAL ─── */
.price-social { margin-top: 1px; background: var(--off-black); padding: 48px var(--pad); display: flex; justify-content: center; border-top: 1px solid var(--border); }
.price-social-inner { display: grid; grid-template-columns: auto auto 1fr auto; align-items: center; gap: 48px; width: 100%; max-width: 1100px; }
.price-social-label { font-size: var(--text-xs); letter-spacing: .22em; text-transform: uppercase; color: var(--gold-text); }
.price-social-name { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.4rem, 2.5vw, 2rem); font-weight: 300; color: var(--cream); }
.price-social-desc { font-size: var(--text-sm); color: var(--text-muted); letter-spacing: .02em; line-height: var(--leading-relaxed); }
.price-social-cta { font-size: var(--text-xs); letter-spacing: .14em; text-transform: uppercase; color: var(--gold-text); border-bottom: 1px solid rgba(139,105,20,.3); text-decoration: none; white-space: nowrap; transition: opacity .3s; font-weight: 500; }
.price-social-cta:hover { opacity: .6; }
@media (max-width: 960px) { .price-social { padding: 36px var(--pad); } .price-social-inner { grid-template-columns: 1fr; gap: 14px; text-align: center; justify-items: center; max-width: none; } }
