@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=Poppins:wght@500;600;700&display=swap');

.rcard-public-card, .rcard-pricing-wrap {
	--rcard-navy: #0F2A4D;    /* heading text color */
	--rcard-blue: #1C63B8;    /* primary action color */
	--rcard-sky: #4FC3F7;     /* secondary accent */
	--rcard-ink: #33414D;     /* body text color */
	--rcard-mute: #6C7A89;    /* muted/secondary text */
	--rcard-line: #DCEAF7;    /* borders */
	--rcard-paper: #F3F9FE;   /* subtle panel background */
	--rcard-surface: #FFFFFF; /* card root background */
	--rcard-oncolor: #FFFFFF; /* text color on top of colored buttons */
	--rcard-heading-font: -apple-system, "Segoe UI", Arial, sans-serif;
}

.rcard-public-card {
	max-width: 420px;
	margin: 0 auto;
	background: var(--rcard-surface);
	border: 1px solid var(--rcard-line);
	border-radius: 28px;
	overflow: hidden;
	box-shadow: 0 30px 60px -30px rgba(15, 42, 77, 0.45), 0 8px 20px -10px rgba(15, 42, 77, 0.15);
	font-family: -apple-system, "Segoe UI", Arial, sans-serif;
	animation: rcard-fade-in 0.5s ease both;
}

@keyframes rcard-fade-in {
	from { opacity: 0; transform: translateY(14px); }
	to { opacity: 1; transform: translateY(0); }
}

.rcard-cover {
	height: 130px;
	background: linear-gradient(135deg, var(--rcard-blue), var(--rcard-sky));
	background-size: cover;
	background-position: center;
	position: relative;
}
.rcard-cover::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0) 50%, rgba(0,0,0,0.08) 100%);
}

.rcard-card-body {
	padding: 0 20px 24px;
	text-align: center;
}

.rcard-logo {
	width: 88px;
	height: 88px;
	border-radius: 50%;
	margin: -44px auto 0;
	background: linear-gradient(135deg, var(--rcard-sky), var(--rcard-blue));
	border: 4px solid var(--rcard-surface);
	box-shadow: 0 8px 20px -4px rgba(15, 42, 77, 0.35), 0 0 0 1px rgba(255,255,255,0.4) inset;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	transition: transform 0.25s ease;
}
.rcard-logo:hover { transform: scale(1.04); }
.rcard-logo img { width: 100%; height: 100%; object-fit: cover; }
.rcard-logo span { font-size: 22px; font-weight: 700; color: var(--rcard-navy); }

.rcard-name {
	margin: 14px 0 2px;
	font-size: 21px;
	color: var(--rcard-navy);
	font-weight: 700;
	font-family: var(--rcard-heading-font);
	letter-spacing: -0.2px;
}
.rcard-tagline { margin: 0 0 16px; font-size: 13px; color: var(--rcard-blue); font-weight: 500; }

.rcard-minisite-nav {
	display: flex;
	justify-content: center;
	gap: 4px;
	flex-wrap: wrap;
	margin: 10px 0 16px;
	border-top: 1px solid var(--rcard-line);
	border-bottom: 1px solid var(--rcard-line);
	padding: 8px 0;
}
.rcard-minisite-nav a {
	font-size: 12px;
	color: var(--rcard-blue);
	text-decoration: none;
	padding: 4px 10px;
	border-radius: 999px;
	font-weight: 600;
	transition: background 0.15s ease;
}
.rcard-minisite-nav a:hover { background: var(--rcard-paper); }

.rcard-quick-actions {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	margin-bottom: 12px;
}
.rcard-qa {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	padding: 12px 4px;
	border-radius: 14px;
	background: var(--rcard-paper);
	border: 1px solid var(--rcard-line);
	color: var(--rcard-navy);
	text-decoration: none;
	font-size: 11px;
	font-weight: 600;
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.rcard-qa:hover { transform: translateY(-3px); box-shadow: 0 10px 18px -8px rgba(15,42,77,0.3); }
.rcard-qa-ic { font-size: 17px; }

.rcard-btn {
	display: inline-block;
	width: 100%;
	box-sizing: border-box;
	padding: 12px 16px;
	border-radius: 14px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	border: none;
	cursor: pointer;
	transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}
.rcard-btn:active { transform: scale(0.98); }
.rcard-btn-primary { background: var(--rcard-blue); color: var(--rcard-oncolor); box-shadow: 0 6px 16px -6px rgba(28,99,184,0.5); }
.rcard-btn-primary:hover { background: var(--rcard-navy); color: var(--rcard-oncolor); box-shadow: 0 8px 20px -6px rgba(15,42,77,0.5); }
.rcard-btn-current { background: var(--rcard-paper); color: var(--rcard-mute); }

.rcard-about {
	margin-top: 18px;
	font-size: 13px;
	line-height: 1.6;
	color: var(--rcard-ink);
	text-align: right;
}

.rcard-services { margin-top: 18px; text-align: right; }
.rcard-service-item {
	border: 1px solid var(--rcard-line);
	border-radius: 14px;
	margin-bottom: 6px;
	padding: 10px 14px;
	background: var(--rcard-paper);
	transition: box-shadow 0.15s ease;
}
.rcard-service-item:hover { box-shadow: 0 6px 14px -8px rgba(15,42,77,0.25); }
.rcard-service-item summary { cursor: pointer; font-size: 13px; color: var(--rcard-navy); font-weight: 600; }
.rcard-service-item p { font-size: 12px; color: var(--rcard-mute); margin: 6px 0 0; }

.rcard-store { margin-top: 18px; text-align: right; }
.rcard-store h4 { font-size: 12px; color: var(--rcard-mute); margin-bottom: 8px; }
.rcard-store-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.rcard-product-card {
	border: 1px solid var(--rcard-line);
	border-radius: 16px;
	overflow: hidden;
	background: var(--rcard-paper);
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.rcard-product-card:hover { transform: translateY(-2px); box-shadow: 0 12px 20px -10px rgba(15,42,77,0.3); }
.rcard-product-card img { width: 100%; aspect-ratio: 1/1; object-fit: cover; display: block; }
.rcard-product-body { padding: 8px 10px; display: flex; flex-direction: column; gap: 4px; }
.rcard-product-body strong { font-size: 12px; color: var(--rcard-navy); }
.rcard-product-price { font-size: 12px; color: var(--rcard-blue); font-weight: 700; }
.rcard-product-body p { font-size: 11px; color: var(--rcard-mute); margin: 0; }
.rcard-product-body .rcard-btn { font-size: 11px; padding: 6px 10px; margin-top: 4px; }

.rcard-gallery {
	margin-top: 18px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 6px;
}
.rcard-gallery img { width: 100%; aspect-ratio: 1/1; object-fit: cover; border-radius: 12px; transition: transform 0.2s ease; }
.rcard-gallery img:hover { transform: scale(1.04); }

.rcard-socials { margin-top: 18px; display: flex; justify-content: center; gap: 14px; }
.rcard-socials a { color: var(--rcard-blue); font-size: 12px; text-decoration: none; font-weight: 600; }

.rcard-payment-methods { margin-top: 18px; text-align: right; }
.rcard-payment-methods h4 { font-size: 12px; color: var(--rcard-mute); margin-bottom: 6px; }
.rcard-payment-chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.rcard-payment-chips span {
	font-size: 11px;
	background: var(--rcard-paper);
	border: 1px solid var(--rcard-line);
	color: var(--rcard-ink);
	padding: 4px 10px;
	border-radius: 999px;
}

.rcard-hours { margin-top: 18px; text-align: right; }
.rcard-hours h4 { font-size: 12px; color: var(--rcard-mute); margin-bottom: 6px; }
.rcard-hours-row {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	padding: 4px 10px;
	border-bottom: 1px solid var(--rcard-line);
	color: var(--rcard-ink);
}

.rcard-collapsible { margin-top: 14px; }
.rcard-collapsible summary {
	list-style: none;
	cursor: pointer;
	text-align: center;
	width: 100%;
}
.rcard-collapsible summary::-webkit-details-marker { display: none; }
.rcard-collapsible summary::marker { content: ""; }
.rcard-collapsible[open] summary { margin-bottom: 12px; }
.rcard-collapsible .rcard-appt-wrap,
.rcard-collapsible .rcard-lead-form-wrap { margin-top: 0; }

.rcard-events { margin-top: 18px; text-align: right; }
.rcard-events h4 { font-size: 12px; color: var(--rcard-mute); margin-bottom: 8px; }
.rcard-event-card {
	border: 1px solid var(--rcard-line);
	border-radius: 14px;
	overflow: hidden;
	background: var(--rcard-paper);
	margin-bottom: 12px;
}
.rcard-event-card img { width: 100%; max-height: 140px; object-fit: cover; display: block; }
.rcard-event-body { padding: 12px 14px; display: flex; flex-direction: column; gap: 4px; }
.rcard-event-body strong { font-size: 14px; color: var(--rcard-navy); }
.rcard-event-date, .rcard-event-location { font-size: 12px; color: var(--rcard-blue); }
.rcard-event-body p { font-size: 12px; color: var(--rcard-mute); margin: 4px 0; }
.rcard-event-body .rcard-collapsible { margin-top: 10px; }

.rcard-rsvp-wrap { text-align: right; }
.rcard-rsvp-form input {
	width: 100%;
	box-sizing: border-box;
	padding: 9px 12px;
	border-radius: 10px;
	border: 1px solid var(--rcard-line);
	background: #fff;
	font-size: 13px;
	margin-bottom: 8px;
}
.rcard-radio-inline { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; margin-left: 12px; width: auto; }
.rcard-rsvp-success { color: var(--rcard-blue); font-size: 13px; text-align: center; padding: 10px 0; }

.rcard-send-card-wrap { display: flex; gap: 8px; margin-top: 10px; }
.rcard-send-card-wrap .rcard-send-card-phone {
	flex: 1;
	padding: 9px 12px;
	border-radius: 10px;
	border: 1px solid var(--rcard-line);
	background: var(--rcard-paper);
	font-size: 13px;
	direction: ltr;
	text-align: right;
}
.rcard-send-card-wrap .rcard-btn { width: auto; white-space: nowrap; }

.rcard-floating-whatsapp {
	position: fixed;
	bottom: 20px;
	left: 20px;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: #25D366;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 26px;
	text-decoration: none;
	box-shadow: 0 6px 20px rgba(0,0,0,0.25);
	z-index: 500;
	transition: transform 0.2s ease;
	animation: rcard-wa-pulse 2.4s ease-in-out infinite;
}
.rcard-floating-whatsapp:hover { transform: scale(1.08); animation-play-state: paused; }
@keyframes rcard-wa-pulse {
	0%, 100% { box-shadow: 0 6px 20px rgba(0,0,0,0.25), 0 0 0 0 rgba(37,211,102,0.5); }
	50% { box-shadow: 0 6px 20px rgba(0,0,0,0.25), 0 0 0 10px rgba(37,211,102,0); }
}

.rcard-appt-wrap { margin-top: 18px; text-align: right; }
.rcard-appt-wrap h4 { font-size: 12px; color: var(--rcard-mute); margin-bottom: 8px; }
.rcard-appt-form input, .rcard-appt-form select {
	width: 100%;
	box-sizing: border-box;
	padding: 9px 12px;
	border-radius: 10px;
	border: 1px solid var(--rcard-line);
	background: var(--rcard-paper);
	color: var(--rcard-ink);
	font-size: 13px;
	margin-bottom: 8px;
}
.rcard-appt-success { color: var(--rcard-blue); font-size: 13px; text-align: center; padding: 10px 0; }

.rcard-lead-form-wrap { margin-top: 18px; text-align: right; }
.rcard-lead-form-wrap h4 { font-size: 12px; color: var(--rcard-mute); margin-bottom: 8px; }
.rcard-lead-form input, .rcard-lead-form textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 9px 12px;
	border-radius: 10px;
	border: 1px solid var(--rcard-line);
	background: var(--rcard-paper);
	color: var(--rcard-ink);
	font-size: 13px;
	margin-bottom: 8px;
	resize: none;
}
.rcard-lead-success { color: var(--rcard-blue); font-size: 13px; text-align: center; }

.rcard-vcard-btn { margin: 6px 0 4px; }

/* ---------------------------------------------------------------
 * Templates (profession-based themes). Each one only overrides the
 * shared CSS variables above, so every section of the card
 * (buttons, panels, borders, text) re-themes automatically.
 * ------------------------------------------------------------- */

/* עסקי - default, already set above */

/* בריאות ורפואה */
.rcard-public-card[data-rcard-theme="health"] {
	--rcard-navy: #0B4F4A;
	--rcard-blue: #16A394;
	--rcard-sky: #7FE0C9;
	--rcard-ink: #204542;
	--rcard-mute: #5C7A76;
	--rcard-line: #CDEEE4;
	--rcard-paper: #EAFBF6;
	--rcard-surface: #FFFFFF;
	--rcard-oncolor: #FFFFFF;
}

/* יצירתי */
.rcard-public-card[data-rcard-theme="creative"] {
	--rcard-navy: #3B1E63;
	--rcard-blue: #8E4FE0;
	--rcard-sky: #FF7AB6;
	--rcard-ink: #3A2A4D;
	--rcard-mute: #8471A0;
	--rcard-line: #EBDCF7;
	--rcard-paper: #FBF3FC;
	--rcard-surface: #FFFFFF;
	--rcard-oncolor: #FFFFFF;
	--rcard-heading-font: 'Poppins', sans-serif;
}
.rcard-public-card[data-rcard-theme="creative"] .rcard-name { letter-spacing: -0.2px; }

/* יוקרה */
.rcard-public-card[data-rcard-theme="luxury"] {
	--rcard-navy: #17140F;
	--rcard-blue: #B8862E;
	--rcard-sky: #E7CD8B;
	--rcard-ink: #3A3325;
	--rcard-mute: #8A7F66;
	--rcard-line: #EFE6D2;
	--rcard-paper: #FAF6EE;
	--rcard-surface: #FFFDF8;
	--rcard-oncolor: #17140F;
	--rcard-heading-font: 'Playfair Display', Georgia, serif;
}

/* קולינריה */
.rcard-public-card[data-rcard-theme="culinary"] {
	--rcard-navy: #4A2C1D;
	--rcard-blue: #D97742;
	--rcard-sky: #F2C94C;
	--rcard-ink: #4A3728;
	--rcard-mute: #93765F;
	--rcard-line: #F3DFC9;
	--rcard-paper: #FBF3EA;
	--rcard-surface: #FFFDFA;
	--rcard-oncolor: #FFFFFF;
	--rcard-heading-font: 'Poppins', sans-serif;
}

/* טכנולוגיה - dark mode template */
.rcard-public-card[data-rcard-theme="tech"] {
	--rcard-navy: #E7F6FF;
	--rcard-blue: #38BDF8;
	--rcard-sky: #3DDC97;
	--rcard-ink: #C7D3DD;
	--rcard-mute: #7E93A3;
	--rcard-line: #1E2A36;
	--rcard-paper: #101923;
	--rcard-surface: #0B121A;
	--rcard-oncolor: #071019;
	--rcard-heading-font: 'Courier New', monospace;
}
.rcard-public-card[data-rcard-theme="tech"] .rcard-logo span { color: var(--rcard-oncolor); }

/* משפטי ופיננסי - dark charcoal + gold, serious and trustworthy */
.rcard-public-card[data-rcard-theme="legal"] {
	--rcard-navy: #14181F;
	--rcard-blue: #C9A24A;
	--rcard-sky: #EDE6D6;
	--rcard-ink: #3A362B;
	--rcard-mute: #8A8474;
	--rcard-line: #E7E0CD;
	--rcard-paper: #FBF9F3;
	--rcard-surface: #FFFFFF;
	--rcard-oncolor: #14181F;
	--rcard-heading-font: Georgia, 'Times New Roman', serif;
}

/* ספורט וכושר - bold energetic red/black */
.rcard-public-card[data-rcard-theme="fitness"] {
	--rcard-navy: #1A1A1A;
	--rcard-blue: #E63946;
	--rcard-sky: #F1FAEE;
	--rcard-ink: #2B2B2B;
	--rcard-mute: #7A7A7A;
	--rcard-line: #F1D9DB;
	--rcard-paper: #FBEFEF;
	--rcard-surface: #FFFFFF;
	--rcard-oncolor: #FFFFFF;
	--rcard-heading-font: 'Poppins', sans-serif;
}

/* נדל"ן - warm elegant earth tones */
.rcard-public-card[data-rcard-theme="realestate"] {
	--rcard-navy: #2E2A22;
	--rcard-blue: #A47148;
	--rcard-sky: #D9C9A3;
	--rcard-ink: #4A4433;
	--rcard-mute: #9C9078;
	--rcard-line: #EDE3CC;
	--rcard-paper: #FAF6EC;
	--rcard-surface: #FFFDF8;
	--rcard-oncolor: #FFFFFF;
}

/* חינוך וילדים - playful bright colors */
.rcard-public-card[data-rcard-theme="kids"] {
	--rcard-navy: #2B2D42;
	--rcard-blue: #EF476F;
	--rcard-sky: #FFD166;
	--rcard-ink: #3A3D5C;
	--rcard-mute: #7C82A6;
	--rcard-line: #FCE1E9;
	--rcard-paper: #FFF7EC;
	--rcard-surface: #FFFFFF;
	--rcard-oncolor: #FFFFFF;
	--rcard-heading-font: 'Poppins', sans-serif;
}

/* pricing page (unthemed - always business colors, since it belongs to
   the platform chrome rather than an individual card) */
.rcard-pricing-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 18px;
	max-width: 960px;
	margin: 0 auto;
}
.rcard-plan-card {
	background: var(--rcard-surface);
	border: 1px solid var(--rcard-line);
	border-radius: 18px;
	padding: 24px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.rcard-plan-featured { background: var(--rcard-navy); border-color: var(--rcard-navy); }
.rcard-plan-featured .rcard-plan-name,
.rcard-plan-featured .rcard-price-num,
.rcard-plan-featured .rcard-plan-features li { color: var(--rcard-oncolor); }
.rcard-plan-featured .rcard-price-unit { color: #B8D6F2; }

.rcard-plan-name { font-size: 13px; color: var(--rcard-mute); font-weight: 600; }
.rcard-plan-price { display: flex; align-items: baseline; gap: 4px; }
.rcard-price-num { font-size: 30px; font-weight: 700; color: var(--rcard-navy); }
.rcard-price-unit { font-size: 12px; color: var(--rcard-mute); }
.rcard-plan-features { list-style: none; margin: 0; padding: 0; flex: 1; }
.rcard-plan-features li { font-size: 13px; color: var(--rcard-ink); padding: 4px 0; }
.rcard-plan-features li::before { content: "✓ "; color: var(--rcard-sky); font-weight: 700; }
.rcard-pricing-note { text-align: center; font-size: 12px; color: var(--rcard-mute); margin-top: 16px; }
