:root {
--ink: #14100c;
--muted: #6f665c;
--paper: #fbf6ec;
--paper-soft: #fffaf1;
--cream: #f5ead8;
--line: rgba(74, 55, 35, 0.15);
--blue: #2563eb;
--blue-dark: #1647b8;
--navy: #08111f;
--gold: #c58b2b;
--gold-soft: rgba(197, 139, 43, 0.16);
--green: #16a34a;
--orange: #ea580c;
--shadow: 0 24px 70px rgba(34, 24, 13, 0.13);
--radius-xl: 32px;
--radius-lg: 24px;
--radius-md: 18px;
}

* {
  box-sizing: border-box;
  }

html {
scroll-behavior: smooth;
}

[hidden],
.bt-monthly-only[hidden],
.bt-yearly-only[hidden],
.bt-monthly-link[hidden],
.bt-yearly-link[hidden] {
display: none !important;
}

body {
margin: 0;
font-family: Inter, Arial, sans-serif;
color: var(--ink);
background:
radial-gradient(circle at 15% 10%, rgba(197, 139, 43, 0.16), transparent 28%),
radial-gradient(circle at 85% 0%, rgba(37, 99, 235, 0.10), transparent 30%),
linear-gradient(180deg, var(--paper) 0%, #ffffff 56%, var(--paper-soft) 100%);
overflow-x: hidden;
}

body::before {
content: "";
position: fixed;
inset: 0;
pointer-events: none;
opacity: 0.25;
z-index: 0;
background-image:
linear-gradient(rgba(20, 16, 12, 0.035) 1px, transparent 1px),
linear-gradient(90deg, rgba(20, 16, 12, 0.025) 1px, transparent 1px);
background-size: 42px 42px;
mask-image: linear-gradient(to bottom, black, transparent 85%);
}

a {
text-decoration: none;
}

.page {
position: relative;
z-index: 1;
min-height: 100vh;
}

.bt-nav {
position: sticky;
top: 0;
z-index: 50;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
padding: 8px 5%;
background: rgba(251, 246, 236, 0.90);
border-bottom: 1px solid var(--line);
backdrop-filter: blur(18px);
}

.bt-brand {
display: inline-flex;
align-items: center;
color: var(--ink);
font-weight: 900;
}

.bt-brand img {
width: 92px;
height: auto;
display: block;
}

.bt-brand span {
margin-left: -12px;
padding-top: 10px;
font-size: 22px;
font-weight: 900;
letter-spacing: -0.04em;
color: #4d453d;
}

.bt-nav-links {
display: flex;
align-items: center;
gap: 22px;
}

.bt-nav-links a:not(.bt-btn) {
color: var(--muted);
font-weight: 850;
font-size: 14px;
}

.bt-nav-links a:not(.bt-btn):hover {
color: var(--ink);
}

.bt-mobile-toggle {
display: none;
width: 46px;
height: 46px;
border-radius: 16px;
border: 1px solid var(--line);
background: rgba(255, 255, 255, 0.72);
align-items: center;
justify-content: center;
cursor: pointer;
}

.bt-mobile-toggle span {
width: 20px;
height: 2px;
background: var(--ink);
border-radius: 99px;
position: relative;
display: block;
}

.bt-mobile-toggle span::before,
.bt-mobile-toggle span::after {
content: "";
position: absolute;
left: 0;
width: 20px;
height: 2px;
background: var(--ink);
border-radius: 99px;
}

.bt-mobile-toggle span::before {
top: -7px;
}

.bt-mobile-toggle span::after {
top: 7px;
}

.bt-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
min-height: 46px;
padding: 13px 22px;
border-radius: 999px;
border: 0;
cursor: pointer;
color: #ffffff !important;
background: linear-gradient(135deg, var(--blue), var(--blue-dark));
font-weight: 900;
box-shadow: 0 16px 36px rgba(37, 99, 235, 0.22);
transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.bt-btn:hover {
transform: translateY(-2px);
box-shadow: 0 20px 46px rgba(37, 99, 235, 0.28);
}

.bt-btn-soft {
background: rgba(255, 255, 255, 0.78);
color: var(--ink) !important;
border: 1px solid var(--line);
box-shadow: none;
}

.bt-btn-light {
background: #ffffff;
color: var(--ink) !important;
box-shadow: 0 18px 42px rgba(34, 24, 13, 0.12);
}

.bt-hero {
padding: 86px 7% 64px;
display: grid;
grid-template-columns: minmax(0, 1.1fr) minmax(330px, 0.9fr);
gap: 46px;
align-items: center;
}

.bt-eyebrow {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 8px 13px;
border-radius: 999px;
color: #7c5316;
background: var(--gold-soft);
border: 1px solid rgba(197, 139, 43, 0.22);
font-size: 13px;
font-weight: 900;
margin-bottom: 20px;
}

.bt-hero h1 {
margin: 0 0 22px;
max-width: 850px;
font-family: "Playfair Display", Georgia, serif;
font-size: clamp(48px, 6.6vw, 86px);
line-height: 0.94;
letter-spacing: -0.055em;
color: var(--ink);
}

.bt-hero h1 span {
color: var(--blue);
font-style: italic;
}

.bt-hero-content > p {
margin: 0;
max-width: 720px;
color: var(--muted);
font-size: 19px;
line-height: 1.8;
}

.bt-hero-actions {
display: flex;
gap: 14px;
flex-wrap: wrap;
margin-top: 32px;
}

.bt-trust-strip {
margin-top: 30px;
display: flex;
flex-wrap: wrap;
gap: 12px;
}

.bt-trust-strip span {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 9px 13px;
border-radius: 999px;
background: rgba(255, 255, 255, 0.68);
border: 1px solid var(--line);
color: #4d453d;
font-size: 13px;
font-weight: 850;
}

.bt-hero-panel {
position: relative;
padding: 20px;
border-radius: var(--radius-xl);
background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 250, 241, 0.92));
border: 1px solid var(--line);
box-shadow: var(--shadow);
}

.bt-hero-panel::before {
content: "";
position: absolute;
inset: -14px;
border-radius: 40px;
border: 1px solid rgba(197, 139, 43, 0.18);
pointer-events: none;
}

.bt-widget-card {
border-radius: 26px;
overflow: hidden;
border: 1px solid rgba(8, 17, 31, 0.12);
background: #ffffff;
}

.bt-widget-header {
padding: 16px 18px;
color: #ffffff;
background: linear-gradient(135deg, var(--navy), #172033);
display: flex;
justify-content: space-between;
align-items: center;
gap: 12px;
}

.bt-online {
display: inline-flex;
align-items: center;
gap: 7px;
color: #c7f9d4;
font-size: 12px;
font-weight: 900;
}

.bt-online::before {
content: "";
width: 9px;
height: 9px;
border-radius: 999px;
background: #22c55e;
box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.15);
}

.bt-widget-body {
padding: 18px;
display: grid;
gap: 14px;
background: linear-gradient(180deg, #ffffff, #fbf6ec);
}

.bt-message {
padding: 15px;
border-radius: 18px;
line-height: 1.55;
color: #4d453d;
border: 1px solid var(--line);
}

.bt-message strong {
display: block;
margin-bottom: 7px;
color: var(--ink);
}

.bt-customer {
background: #ffffff;
}

.bt-ai {
background: #e8f0ff;
border-color: rgba(37, 99, 235, 0.16);
}

.bt-action {
background: #fff7e8;
border-color: rgba(197, 139, 43, 0.22);
}

.bt-metrics {
margin-top: 16px;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 12px;
}

.bt-metrics div {
padding: 15px;
border-radius: 18px;
background: rgba(255, 255, 255, 0.72);
border: 1px solid var(--line);
}

.bt-metrics span {
color: var(--muted);
font-size: 12px;
font-weight: 900;
text-transform: uppercase;
}

.bt-metrics strong {
display: block;
margin-top: 6px;
color: var(--blue);
font-size: 24px;
}

.bt-section {
padding: 78px 7%;
}

.bt-section-soft {
background: rgba(255, 255, 255, 0.72);
border-top: 1px solid var(--line);
border-bottom: 1px solid var(--line);
}

.bt-section-heading {
max-width: 850px;
margin-bottom: 34px;
}

.bt-section-heading h2 {
margin: 0 0 14px;
font-family: "Playfair Display", Georgia, serif;
font-size: clamp(36px, 4.2vw, 56px);
line-height: 1;
letter-spacing: -0.045em;
}

.bt-section-heading p {
margin: 0;
color: var(--muted);
font-size: 18px;
line-height: 1.72;
}

.bt-feature-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 20px;
}

.bt-card {
background: rgba(255, 255, 255, 0.78);
border: 1px solid var(--line);
border-radius: var(--radius-lg);
padding: 25px;
box-shadow: 0 12px 34px rgba(34, 24, 13, 0.06);
transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.bt-card:hover {
transform: translateY(-4px);
box-shadow: 0 20px 48px rgba(34, 24, 13, 0.11);
}

.bt-card-icon {
width: 54px;
height: 54px;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 18px;
background: #e8f0ff;
font-size: 25px;
margin-bottom: 18px;
}

.bt-card h3 {
margin: 0 0 10px;
font-size: 21px;
color: var(--ink);
letter-spacing: -0.03em;
}

.bt-card p {
margin: 0;
color: var(--muted);
line-height: 1.68;
}

.bt-industry-grid {
display: grid;
grid-template-columns: repeat(6, minmax(0, 1fr));
gap: 14px;
}

.bt-industry-card {
padding: 18px;
min-height: 135px;
}

.bt-industry-card span {
display: block;
font-size: 24px;
margin-bottom: 10px;
}

.bt-industry-card h3 {
font-size: 17px;
}

.bt-industry-card p {
font-size: 14px;
}

.bt-pricing-heading {
display: flex;
justify-content: space-between;
align-items: flex-end;
gap: 28px;
max-width: none;
}

.bt-pricing-heading > div:first-child {
max-width: 820px;
}

.bt-billing-toggle {
display: inline-flex;
padding: 6px;
border-radius: 999px;
background: rgba(255, 255, 255, 0.82);
border: 1px solid var(--line);
box-shadow: 0 12px 34px rgba(34, 24, 13, 0.08);
flex: 0 0 auto;
}

.bt-billing-toggle-btn {
border: 0;
border-radius: 999px;
padding: 12px 18px;
background: transparent;
color: var(--muted);
font-weight: 900;
cursor: pointer;
transition: all 0.18s ease;
}

.bt-billing-toggle-btn span {
display: inline-flex;
margin-left: 6px;
padding: 3px 8px;
border-radius: 999px;
background: #dcfce7;
color: #166534;
font-size: 11px;
}

.bt-billing-toggle-btn.active {
background: linear-gradient(135deg, var(--blue), var(--blue-dark));
color: #ffffff;
box-shadow: 0 12px 28px rgba(37, 99, 235, 0.24);
}

.bt-pricing-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 22px;
align-items: stretch;
}

.bt-price-card {
position: relative;
display: flex;
flex-direction: column;
padding: 28px;
border-radius: var(--radius-lg);
background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 250, 241, 0.92));
border: 1px solid var(--line);
box-shadow: 0 14px 42px rgba(34, 24, 13, 0.08);
transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
min-height: 100%;
}

.bt-price-card:hover {
transform: translateY(-5px);
box-shadow: 0 24px 60px rgba(34, 24, 13, 0.14);
}

.bt-price-card.popular {
border-color: rgba(37, 99, 235, 0.42);
background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(232, 240, 255, 0.94));
}

.bt-price-card.popular::before {
content: "Recommended";
position: absolute;
top: -13px;
right: 22px;
padding: 8px 12px;
border-radius: 999px;
background: linear-gradient(135deg, var(--blue), var(--blue-dark));
color: #ffffff;
font-size: 12px;
font-weight: 900;
box-shadow: 0 12px 26px rgba(37, 99, 235, 0.25);
}

.bt-price-head {
min-height: 152px;
}

.bt-price-badges {
display: flex;
flex-wrap: wrap;
gap: 8px;
min-height: 32px;
margin-bottom: 14px;
}

.bt-price-badge {
display: inline-flex;
align-items: center;
padding: 7px 12px;
border-radius: 999px;
font-size: 12px;
font-weight: 900;
line-height: 1;
}

.bt-price-badge.free {
background: #dcfce7;
color: #166534;
}

.bt-price-badge.trial {
background: #fef3c7;
color: #92400e;
}

.bt-price-badge.paid {
background: #f1f5f9;
color: #475569;
}

.bt-price-badge.popular {
background: #dbeafe;
color: #1d4ed8;
}

.bt-price-card h3 {
margin: 0 0 10px;
font-family: "Playfair Display", Georgia, serif;
font-size: 34px;
letter-spacing: -0.045em;
color: var(--ink);
}

.bt-price-head p {
color: var(--muted);
line-height: 1.65;
margin: 0;
}

.bt-price-main {
display: flex;
align-items: flex-end;
gap: 8px;
margin: 20px 0 8px;
}

.bt-price-main strong {
color: var(--ink);
font-size: 42px;
line-height: 1;
letter-spacing: -0.06em;
}

.bt-price-main span,
.bt-price-support {
color: var(--muted);
font-weight: 700;
}

.bt-price-support {
margin: 0 0 18px;
min-height: 44px;
line-height: 1.45;
}

.bt-price-support strong {
color: var(--ink);
}

.bt-price-support span {
display: inline-flex;
margin-top: 5px;
padding: 5px 9px;
border-radius: 999px;
background: #dcfce7;
color: #166534;
font-size: 12px;
font-weight: 900;
}

.bt-trial-note {
margin-bottom: 20px;
padding: 14px;
border-radius: 18px;
border: 1px solid var(--line);
background: rgba(255, 255, 255, 0.72);
}

.bt-trial-note strong {
display: block;
margin-bottom: 5px;
color: var(--ink);
font-size: 14px;
}

.bt-trial-note span {
display: block;
color: var(--muted);
font-size: 13px;
line-height: 1.48;
font-weight: 700;
}

.bt-trial-note.free {
background: #f0fdf4;
border-color: #bbf7d0;
}

.bt-trial-note.free strong,
.bt-trial-note.free span {
color: #166534;
}

.bt-trial-note.trial {
background: #fff7ed;
border-color: #fed7aa;
}

.bt-trial-note.trial strong,
.bt-trial-note.trial span {
color: #9a3412;
}

.bt-price-features {
display: grid;
gap: 10px;
margin: 0 0 24px;
}

.bt-price-features div {
display: flex;
justify-content: space-between;
gap: 12px;
padding-bottom: 10px;
border-bottom: 1px solid var(--line);
}

.bt-price-features span {
color: var(--muted);
font-weight: 800;
}

.bt-price-features strong {
color: var(--ink);
}

.bt-branding-note {
margin: auto 0 16px !important;
padding: 11px 12px;
border-radius: 14px;
background: rgba(255, 255, 255, 0.72);
color: var(--muted) !important;
font-size: 13px;
font-weight: 800;
line-height: 1.4;
}

.bt-price-btn {
width: 100%;
margin-top: auto;
}

.bt-pricing-empty {
padding: 34px;
border-radius: var(--radius-lg);
background: rgba(255, 255, 255, 0.78);
border: 1px solid var(--line);
box-shadow: 0 14px 42px rgba(34, 24, 13, 0.08);
}

.bt-pricing-empty h3 {
margin-top: 0;
font-size: 28px;
}

.bt-pricing-empty p {
color: var(--muted);
line-height: 1.65;
}

.bt-steps-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 18px;
}

.bt-step-number {
width: 42px;
height: 42px;
border-radius: 999px;
display: inline-flex;
align-items: center;
justify-content: center;
background: var(--ink);
color: #ffffff;
font-weight: 900;
margin-bottom: 16px;
}

.bt-cta {
margin: 30px 7% 78px;
padding: 46px;
border-radius: var(--radius-xl);
background:
linear-gradient(135deg, rgba(8, 17, 31, 0.97), rgba(22, 36, 60, 0.97)),
radial-gradient(circle at 20% 0%, rgba(197, 139, 43, 0.22), transparent 35%);
color: #ffffff;
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
gap: 26px;
align-items: center;
box-shadow: var(--shadow);
}

.bt-cta h2 {
margin: 0 0 10px;
font-family: "Playfair Display", Georgia, serif;
font-size: clamp(34px, 4vw, 54px);
line-height: 1;
letter-spacing: -0.045em;
}

.bt-cta p {
color: #d5deeb;
margin: 0;
max-width: 720px;
line-height: 1.7;
font-size: 18px;
}

.bt-footer {
padding: 34px 7%;
color: var(--muted);
text-align: center;
border-top: 1px solid var(--line);
background: rgba(255, 255, 255, 0.62);
}

@media (max-width: 1260px) {
.bt-pricing-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bt-industry-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bt-steps-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

}

@media (max-width: 980px) {
.bt-nav {
padding: 12px 5%;
flex-wrap: wrap;
}

.bt-brand img {
    width: 88px;
}

.bt-brand span {
    font-size: 18px;
    margin-left: -8px;
}

.bt-mobile-toggle {
    display: inline-flex;
}

.bt-nav-links {
    display: none;
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    padding: 14px 0 4px;
}

.bt-nav-links.is-open {
    display: flex;
}

.bt-nav-links a:not(.bt-btn),
.bt-nav-links .bt-btn {
    width: 100%;
    justify-content: center;
    padding: 14px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid var(--line);
}

.bt-nav-links .bt-btn {
    background: linear-gradient(135deg, var(--blue), var(--blue-dark));
    border: 0;
}

.bt-hero {
    padding: 58px 5% 44px;
    grid-template-columns: 1fr;
}

.bt-feature-grid {
    grid-template-columns: 1fr;
}

.bt-section {
    padding: 58px 5%;
}

.bt-pricing-heading {
    flex-direction: column;
    align-items: flex-start;
}

.bt-billing-toggle {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.bt-billing-toggle-btn {
    width: 100%;
}

.bt-cta {
    margin: 58px 5%;
    grid-template-columns: 1fr;
    padding: 34px 24px;
}

.bt-cta .bt-btn {
    width: 100%;
}


}

@media (max-width: 720px) {
.bt-hero h1 {
font-size: 47px;
letter-spacing: -0.055em;
}

.bt-hero-content > p {
    font-size: 16.5px;
}

.bt-hero-actions {
    flex-direction: column;
}

.bt-hero-actions .bt-btn {
    width: 100%;
}

.bt-trust-strip {
    flex-direction: column;
}

.bt-hero-panel {
    padding: 14px;
    border-radius: 24px;
}

.bt-hero-panel::before {
    display: none;
}

.bt-metrics,
.bt-industry-grid,
.bt-steps-grid,
.bt-pricing-grid {
    grid-template-columns: 1fr;
}

.bt-price-head {
    min-height: auto;
}

.bt-price-main strong {
    font-size: 36px;
}

.bt-section-heading h2 {
    font-size: 39px;
}

.bt-cta h2 {
    font-size: 38px;
}

}



/* =========================================================
BookTill Multi-Currency Pricing Additions
Append to: public/assets/css/landing.css
========================================================= */

.currency-toolbar {
display: flex;
justify-content: space-between;
align-items: center;
gap: 18px;
padding: 16px 18px;
margin: 0 0 24px;
border-radius: var(--radius-lg);
background: rgba(255, 255, 255, 0.82);
border: 1px solid var(--line);
box-shadow: 0 14px 38px rgba(34, 24, 13, 0.07);
}

.currency-toolbar strong {
display: block;
color: var(--ink);
margin-bottom: 4px;
font-size: 15px;
}

.currency-toolbar span {
display: block;
color: var(--muted);
font-size: 13px;
line-height: 1.45;
font-weight: 750;
}

.currency-form {
display: flex;
align-items: center;
gap: 10px;
}

.currency-form label {
color: var(--ink);
font-size: 13px;
font-weight: 900;
white-space: nowrap;
}

.currency-form select {
min-height: 44px;
min-width: 220px;
padding: 10px 14px;
border-radius: 999px;
border: 1px solid var(--line);
background: #ffffff;
color: var(--ink);
font-weight: 850;
outline: none;
}

.currency-form select:focus {
border-color: rgba(37, 99, 235, 0.45);
box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.10);
}

.currency-fallback {
padding: 11px 13px;
border-radius: 15px;
background: #fff7ed;
color: #9a3412;
border: 1px solid #fed7aa;
font-size: 12px;
line-height: 1.45;
font-weight: 850;
}

@media (max-width: 980px) {
.currency-toolbar {
align-items: flex-start;
flex-direction: column;
}

.currency-form {
    width: 100%;
    flex-wrap: wrap;
}

.currency-form select {
    flex: 1;
    min-width: 180px;
}

}

@media (max-width: 640px) {
.currency-form,
.currency-form select {
width: 100%;
}
}
