:root {
    --ink: #17302a;
    --muted: #687872;
    --cream: #f7f5ef;
    --paper: #ffffff;
    --sage: #b8c9ba;
    --deep: #173b32;
    --accent: #c7a26a;
    --line: #e6e4dc;
    --shadow: 0 18px 50px rgba(23,48,42,.10);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:"DM Sans",sans-serif; line-height:1.6; }
a { color:inherit; text-decoration:none; }
.container { width:min(1160px, calc(100% - 40px)); margin:auto; }
.site-header { position:absolute; z-index:20; top:0; left:0; right:0; color:#fff; padding:24px 0; }
.nav-wrap { display:flex; align-items:center; justify-content:space-between; }
.brand { display:flex; align-items:center; gap:11px; }
.brand-mark { width:42px; height:42px; border:1px solid rgba(255,255,255,.55); border-radius:50%; display:grid; place-items:center; font-family:"Playfair Display",serif; font-size:14px; }
.brand strong,.brand small { display:block; }
.brand strong { font-family:"Playfair Display",serif; font-size:18px; font-weight:600; letter-spacing:.2px; }
.brand small { font-size:8px; letter-spacing:2.2px; opacity:.78; }
.nav { display:flex; align-items:center; gap:30px; font-size:14px; }
.nav a { opacity:.9; }
.nav a:hover { opacity:1; }
.nav-book { padding:11px 18px; border:1px solid rgba(255,255,255,.5); border-radius:100px; }

.hero { min-height:760px; position:relative; display:flex; align-items:center; background:linear-gradient(90deg,rgba(12,32,27,.74),rgba(12,32,27,.18)),url("https://images.unsplash.com/photo-1540541338287-41700207dee6?auto=format&fit=crop&w=2000&q=85") center/cover; color:#fff; }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.20),transparent 50%,rgba(0,0,0,.35)); }
.hero-content { position:relative; padding-top:70px; }
.eyebrow { font-size:11px; font-weight:700; letter-spacing:2.5px; opacity:.8; }
.eyebrow.dark { color:#6e7e77; opacity:1; }
.hero h1,.page-hero h1,.confirmation h1 { font-family:"Playfair Display",serif; font-weight:500; font-size:clamp(48px,7vw,84px); line-height:1.03; margin:18px 0; }
.hero h1 em { color:#d9c49f; font-style:italic; }
.hero p { max-width:540px; color:rgba(255,255,255,.84); font-size:17px; }
.hero-actions { display:flex; gap:12px; margin-top:30px; }
.btn { border:0; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:12px; border-radius:5px; padding:14px 22px; font-weight:700; font-family:inherit; transition:.2s ease; }
.btn:hover { transform:translateY(-1px); }
.btn-primary { background:var(--deep); color:#fff; }
.btn-dark { background:#1c2723; color:#fff; }
.btn-light { background:#fff; color:var(--ink); }
.btn-outline { background:transparent; border:1px solid #cfd5cf; color:var(--ink); }
.btn-small { padding:11px 16px; font-size:13px; }
.btn-wide { width:100%; }

.booking-bar { position:absolute; bottom:-48px; left:0; right:0; z-index:5; }
.quick-search { background:#fff; box-shadow:var(--shadow); border-radius:7px; padding:20px; display:grid; grid-template-columns:1fr 1fr .8fr auto; gap:18px; align-items:end; }
.quick-search label { display:block; color:#87928d; font-size:9px; font-weight:700; letter-spacing:1.5px; margin-bottom:5px; }
.quick-search input,.quick-search select { border:0; border-bottom:1px solid var(--line); width:100%; padding:9px 2px; font:inherit; color:var(--ink); background:#fff; outline:none; }

.section { padding:110px 0; }
.intro { padding-top:155px; }
.two-col { display:grid; grid-template-columns:1.15fr 1fr; gap:100px; align-items:end; }
h2 { font-family:"Playfair Display",serif; font-weight:500; font-size:clamp(36px,4vw,54px); line-height:1.08; margin:12px 0 20px; }
.intro-copy { color:var(--muted); font-size:16px; max-width:460px; }
.text-link { font-weight:700; font-size:14px; border-bottom:1px solid #9ba9a3; padding-bottom:4px; display:inline-block; }
.soft-bg { background:var(--cream); }
.section-head { display:flex; justify-content:space-between; align-items:end; margin-bottom:35px; }
.cards-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.room-card,.package-card { background:#fff; overflow:hidden; border:1px solid var(--line); }
.card-image,.package-image { height:260px; background-position:center; background-size:cover; }
.card-image.tall,.package-image.tall { height:340px; }
.card-body { padding:23px; }
.card-meta { display:flex; justify-content:space-between; color:#7b8781; font-size:11px; margin-bottom:10px; }
.card-meta strong { color:var(--ink); }
.card-body h3 { font-family:"Playfair Display",serif; font-size:27px; font-weight:600; margin:7px 0; }
.card-body p { color:var(--muted); font-size:14px; margin:0 0 18px; }
.pill { display:inline-block; background:#edf2ed; color:#476056; border-radius:100px; padding:5px 10px; font-size:10px; font-weight:700; }
.package-price { font-family:"Playfair Display",serif; font-size:27px; margin-top:12px; }
.package-bottom { display:flex; align-items:center; justify-content:space-between; }
.package-bottom strong { font-family:"Playfair Display",serif; font-size:25px; }

.cta { background:var(--deep); color:#fff; padding:75px 0; }
.cta-inner { display:flex; justify-content:space-between; align-items:center; gap:30px; }
.cta h2 { margin:8px 0 0; }

.page-hero { background:var(--deep); color:#fff; padding:160px 0 80px; }
.page-hero h1 { font-size:62px; margin:10px 0; }
.page-hero p { max-width:600px; color:#cbd7d1; margin:0; }

.booking-section { background:var(--cream); }
.booking-layout { display:grid; grid-template-columns:minmax(0, 1fr) 330px; gap:30px; align-items:start; }
.booking-form-card { background:#fff; padding:38px; border:1px solid var(--line); }
.form-title h2 { font-size:34px; margin-bottom:24px; }
.form-title.room-title { margin-top:42px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:18px; }
.field.full { grid-column:1/-1; }
.field label { display:block; font-size:11px; font-weight:700; color:#5e6d67; margin-bottom:6px; }
.field input,.field textarea,.field select { width:100%; border:1px solid #dce0db; border-radius:4px; padding:12px 13px; font:inherit; outline:none; }
.field input:focus,.field textarea:focus { border-color:#809a8e; }
.field span { color:#a44; font-size:11px; }
.validation { background:#fff3f1; color:#8e4035; padding:10px 13px; margin-bottom:15px; font-size:13px; }
.room-options { display:grid; gap:12px; }
.room-option input { position:absolute; opacity:0; }
.room-option-content { display:flex; gap:15px; border:1px solid var(--line); padding:10px; cursor:pointer; transition:.2s; }
.room-option input:checked + .room-option-content { border-color:#547265; box-shadow:0 0 0 1px #547265; }
.room-option-image { width:125px; min-width:125px; height:95px; background-size:cover; background-position:center; }
.room-option-copy { display:flex; flex-direction:column; }
.room-option-copy strong { font-family:"Playfair Display",serif; font-size:20px; }
.room-option-copy small { color:var(--muted); font-size:12px; line-height:1.45; }
.room-option-copy b { margin-top:auto; font-size:13px; }
.empty-state { padding:25px; background:var(--cream); color:var(--muted); }
.booking-side { display:grid; gap:14px; }
.trust-card { display:flex; gap:14px; background:#fff; border:1px solid var(--line); padding:20px; }
.trust-icon { width:34px; height:34px; border-radius:50%; background:#e7efe9; display:grid; place-items:center; font-weight:700; }
.trust-card strong { display:block; }
.trust-card p { color:var(--muted); font-size:12px; margin:3px 0 0; }
.whatsapp-card { background:#173b32; color:#fff; padding:28px; }
.wa-label { font-size:9px; letter-spacing:2px; opacity:.7; }
.whatsapp-card h3 { font-family:"Playfair Display",serif; font-size:30px; margin:10px 0; }
.whatsapp-card p { color:#cbd7d1; font-size:13px; margin-bottom:22px; }

.confirmation { min-height:78vh; background:var(--cream); display:grid; place-items:center; padding:130px 20px 80px; }
.confirmation-card { background:#fff; width:min(720px,100%); text-align:center; padding:55px; border:1px solid var(--line); box-shadow:var(--shadow); }
.success-icon { width:64px; height:64px; margin:0 auto 22px; background:#e5efe7; color:#2e6b50; border-radius:50%; display:grid; place-items:center; font-size:28px; font-weight:700; }
.confirmation h1 { font-size:48px; }
.confirmation-card > p { color:var(--muted); max-width:520px; margin:0 auto 22px; }
.reference { display:inline-block; background:#f2f4ef; padding:10px 18px; letter-spacing:2px; font-weight:700; font-size:14px; margin-bottom:30px; }
.summary { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-bottom:1px solid var(--line); text-align:left; }
.summary div { padding:15px; border-bottom:1px solid var(--line); }
.summary div:nth-last-child(-n+2) { border-bottom:0; }
.summary span,.summary strong { display:block; }
.summary span { color:#89938e; font-size:10px; text-transform:uppercase; letter-spacing:1px; }
.summary strong { margin-top:3px; }
.status { color:#a77a32; }
.confirmation-actions { display:flex; justify-content:center; gap:12px; margin-top:28px; }

.footer { background:#112a24; color:#d6e0db; padding:65px 0 25px; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr; gap:60px; }
.footer p { max-width:370px; color:#9eada6; font-size:13px; }
.footer h4 { color:#fff; margin-top:0; }
.footer a,.footer span { display:block; color:#aebbb5; font-size:13px; margin:7px 0; }
.footer-brand .brand-mark { border-color:#668076; }
.copyright { border-top:1px solid rgba(255,255,255,.1); margin-top:45px; padding-top:18px; color:#7f9189; font-size:11px; }

@media (max-width: 850px) {
    .nav { gap:12px; font-size:12px; }
    .hero { min-height:720px; }
    .quick-search { grid-template-columns:1fr 1fr; }
    .two-col,.booking-layout { grid-template-columns:1fr; gap:35px; }
    .cards-3 { grid-template-columns:1fr; }
    .booking-side { grid-template-columns:1fr 1fr; }
    .whatsapp-card { grid-column:1/-1; }
    .footer-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width: 560px) {
    .container { width:min(100% - 28px,1160px); }
    .site-header { padding:16px 0; }
    .nav a:not(.nav-book) { display:none; }
    .hero { min-height:760px; }
    .hero h1 { font-size:54px; }
    .booking-bar { bottom:-105px; }
    .quick-search { grid-template-columns:1fr; }
    .intro { padding-top:180px; }
    .section { padding:75px 0; }
    .section-head,.cta-inner { align-items:flex-start; flex-direction:column; }
    .page-hero { padding-top:130px; }
    .page-hero h1 { font-size:48px; }
    .booking-form-card { padding:23px; }
    .form-grid { grid-template-columns:1fr; }
    .field.full { grid-column:auto; }
    .booking-side { grid-template-columns:1fr; }
    .confirmation-card { padding:35px 20px; }
    .confirmation h1 { font-size:39px; }
    .summary { grid-template-columns:1fr; }
    .summary div:nth-last-child(-n+2) { border-bottom:1px solid var(--line); }
    .summary div:last-child { border-bottom:0; }
    .confirmation-actions { flex-direction:column; }
    .footer-grid { grid-template-columns:1fr; gap:25px; }
}

/* UplivaAI platform experience */
.platform-body {
    --platform-ink:#111827;
    --platform-muted:#667085;
    --platform-paper:#ffffff;
    --platform-soft:#f7f7f5;
    --platform-line:#e8e8e5;
    --platform-navy:#101827;
    --platform-navy-2:#172235;
    --platform-blue:#3157d5;
    --platform-blue-dark:#2345b5;
    --platform-coral:#ef806d;
    --platform-gold:#d7b46b;
    background:#fff;
    color:var(--platform-ink);
}
.platform-header { position:absolute; top:0; left:0; right:0; z-index:30; padding:22px 0; color:#fff; }
.platform-nav { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.platform-brand { display:inline-flex; align-items:center; gap:10px; font-weight:800; letter-spacing:1.6px; }
.platform-brand span { width:38px; height:38px; border:1px solid rgba(255,255,255,.32); border-radius:12px; display:grid; place-items:center; font-family:"Playfair Display",serif; font-size:20px; background:rgba(255,255,255,.05); }
.platform-brand strong { font-size:15px; }
.platform-nav nav { display:flex; align-items:center; gap:22px; font-size:12px; font-weight:600; }
.platform-nav nav a { color:#f6f8ff; opacity:.9; transition:.2s ease; }
.platform-nav nav a:hover { opacity:1; color:#fff; }
.platform-nav-btn { border:1px solid rgba(255,255,255,.42); border-radius:999px; padding:10px 17px; background:rgba(255,255,255,.08); }

.platform-hero { min-height:850px; padding:155px 0 105px; color:#fff; position:relative; overflow:hidden; background:radial-gradient(circle at 83% 25%,rgba(81,111,224,.20),transparent 30%),radial-gradient(circle at 12% 80%,rgba(239,128,109,.11),transparent 26%),linear-gradient(135deg,#0c1320 0%,#121b2d 52%,#1b2740 100%); }
.platform-hero-grid-lines { position:absolute; inset:0; opacity:.12; background-image:linear-gradient(rgba(255,255,255,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.15) 1px,transparent 1px); background-size:80px 80px; mask-image:linear-gradient(to bottom,black,transparent 85%); }
.platform-hero-orb { position:absolute; border-radius:50%; filter:blur(2px); pointer-events:none; }
.platform-hero-orb-one { width:420px; height:420px; right:-150px; top:110px; background:rgba(49,87,213,.12); box-shadow:0 0 120px rgba(49,87,213,.18); }
.platform-hero-orb-two { width:240px; height:240px; left:-120px; bottom:-80px; background:rgba(239,128,109,.08); }
.platform-hero-grid { display:grid; grid-template-columns:1.02fr .82fr; gap:75px; align-items:center; position:relative; z-index:2; }
.platform-hero-copy { max-width:700px; }
.platform-hero-badge { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid rgba(255,255,255,.16); border-radius:999px; background:rgba(255,255,255,.06); color:#dbe3f7; font-size:9px; letter-spacing:2px; font-weight:800; }
.badge-dot { width:7px; height:7px; border-radius:50%; background:#ef806d; box-shadow:0 0 0 4px rgba(239,128,109,.12); }
.platform-kicker { font-size:10px; letter-spacing:2.5px; font-weight:800; opacity:.72; }
.platform-kicker.dark { color:#5e6a7e; opacity:1; }
.platform-hero h1 { font-family:"Manrope",sans-serif; font-size:clamp(47px,5.6vw,76px); line-height:1.02; font-weight:800; max-width:850px; margin:22px 0; letter-spacing:-3.4px; }
.platform-hero h1 em { color:#f2c980; font-family:"Playfair Display",serif; font-weight:500; }
.platform-hero-lead { max-width:660px; color:#c7d0df; font-size:16px; line-height:1.8; margin:0; }
.platform-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:30px; }
.platform-btn { display:inline-flex; justify-content:center; align-items:center; gap:10px; border:0; border-radius:10px; padding:14px 20px; font-weight:800; font-size:12px; cursor:pointer; font-family:inherit; transition:transform .2s ease,box-shadow .2s ease,background .2s ease; }
.platform-btn:hover { transform:translateY(-2px); }
.platform-btn-primary { background:#f1c979; color:#111827; box-shadow:0 12px 28px rgba(0,0,0,.18); }
.platform-btn-primary:hover { background:#f6d58e; box-shadow:0 16px 34px rgba(0,0,0,.22); }
.platform-btn-light { background:#fff; color:#142033; }
.platform-btn-ghost { border:1px solid rgba(255,255,255,.22); background:rgba(255,255,255,.04); color:#fff; }
.platform-btn-ghost:hover { background:rgba(255,255,255,.09); }
.platform-btn-ghost-light { border:1px solid rgba(255,255,255,.28); color:#fff; background:transparent; }
.platform-proof-row { display:flex; gap:18px; flex-wrap:wrap; margin-top:26px; color:#aeb9cb; font-size:10px; }
.platform-proof-row b { color:#8bd1a5; margin-right:4px; }
.platform-hero-note { margin-top:38px; padding-top:18px; border-top:1px solid rgba(255,255,255,.11); display:flex; gap:12px; flex-wrap:wrap; font-size:10px; color:#8f9bad; }
.platform-hero-note strong { color:#d7deea; font-weight:600; }

.lead-engine-card { width:min(420px,100%); margin:auto; padding:17px; border:1px solid rgba(255,255,255,.13); border-radius:24px; background:rgba(255,255,255,.065); box-shadow:0 35px 100px rgba(0,0,0,.32); backdrop-filter:blur(18px); }
.lead-engine-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:5px 5px 15px; }
.mini-label { display:block; color:#8f9bad; font-size:8px; letter-spacing:1.8px; font-weight:800; }
.lead-engine-head strong { display:block; margin-top:4px; font-size:13px; }
.live-chip { font-size:8px; letter-spacing:1px; color:#a7dfba; border:1px solid rgba(167,223,186,.22); padding:6px 8px; border-radius:999px; }
.live-chip i { display:inline-block; width:5px; height:5px; border-radius:50%; background:#7ed69b; margin-right:5px; }
.wa-preview { border:1px solid #dfe5df; background:#f3f5f1; border-radius:17px; padding:12px; color:#17202d; box-shadow:0 10px 30px rgba(0,0,0,.12); }
.wa-preview-top { display:flex; align-items:center; gap:9px; padding:4px 2px 11px; border-bottom:1px solid #dfe3dd; }
.wa-preview-top > div { flex:1; }
.wa-avatar { width:28px; height:28px; border-radius:50%; background:#1b2638; color:#fff; display:grid; place-items:center; font-size:10px; font-weight:800; }
.wa-preview-top strong,.wa-preview-top small { display:block; }
.wa-preview-top strong { font-size:10px; }
.wa-preview-top small { font-size:8px; color:#778176; }
.wa-message { max-width:82%; padding:10px 12px; margin-top:11px; border-radius:12px; font-size:9px; line-height:1.5; }
.wa-message.customer { background:#fff; margin-right:auto; border-top-left-radius:4px; }
.wa-message.business { background:#dce8ff; margin-left:auto; border-top-right-radius:4px; }
.wa-choice-row { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:7px; }
.wa-choice-row span { padding:8px 6px; border:1px solid #d7ded7; border-radius:8px; background:#fff; text-align:center; font-size:8px; font-weight:700; }
.journey-connector { display:flex; align-items:center; gap:7px; padding:14px 4px 10px; color:#99a4b5; font-size:8px; text-align:center; }
.journey-connector span { height:1px; flex:1; background:rgba(255,255,255,.13); }
.website-preview { border:1px solid rgba(255,255,255,.13); background:#fff; color:#17202d; border-radius:14px; overflow:hidden; }
.website-browser { height:27px; display:flex; align-items:center; gap:4px; padding:0 9px; background:#edf0f4; }
.website-browser span { width:5px; height:5px; border-radius:50%; background:#c3c9d2; }
.website-browser b { margin-left:6px; font-size:7px; color:#7a8492; font-weight:600; }
.website-preview-content { padding:17px; display:flex; justify-content:space-between; gap:15px; background:linear-gradient(135deg,#f9f7f1,#fff); }
.website-preview-content > div:first-child small,.website-preview-content > div:first-child strong { display:block; }
.website-preview-content small { font-size:7px; color:#8a94a0; letter-spacing:1.3px; }
.website-preview-content strong { font-family:"Playfair Display",serif; font-size:18px; line-height:1.1; margin-top:6px; }
.website-preview-card { width:125px; padding:11px; border:1px solid #e8e3d8; border-radius:10px; background:#fff; box-shadow:0 7px 18px rgba(23,31,45,.06); }
.website-preview-card span { font-size:17px; }
.website-preview-card b,.website-preview-card small { display:block; }
.website-preview-card b { font-size:9px; margin-top:5px; }
.website-preview-card small { margin-top:4px; color:#3157d5; font-size:7px; letter-spacing:0; }
.lead-capture { display:flex; align-items:center; gap:10px; margin:12px 2px 1px; padding:10px; border-radius:10px; background:rgba(126,214,155,.08); border:1px solid rgba(126,214,155,.13); }
.lead-capture > span { color:#7ed69b; font-size:12px; }
.lead-capture b,.lead-capture small { display:block; }
.lead-capture b { font-size:9px; }
.lead-capture small { color:#9ca8b8; font-size:7px; margin-top:2px; }

.platform-value-strip { background:#fff; border-bottom:1px solid var(--platform-line); }
.platform-value-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.platform-value-grid > div { padding:24px 20px; border-right:1px solid var(--platform-line); }
.platform-value-grid > div:last-child { border-right:0; }
.platform-value-grid strong,.platform-value-grid span,.platform-value-grid small { display:block; }
.platform-value-grid strong { font-family:"Manrope",sans-serif; color:#3157d5; font-size:11px; letter-spacing:1px; }
.platform-value-grid span { font-size:11px; font-weight:800; margin-top:4px; color:#182235; }
.platform-value-grid small { font-size:9px; color:#8891a0; margin-top:2px; }

.platform-section { padding:105px 0; background:#fff; }
.platform-soft { background:#f7f7f5; }
.platform-section-head { display:flex; justify-content:space-between; gap:50px; align-items:end; margin-bottom:42px; }
.platform-section-head > div { max-width:760px; }
.platform-section-head h2 { font-family:"Manrope",sans-serif; font-size:clamp(34px,4.3vw,56px); font-weight:800; line-height:1.05; color:#111827; letter-spacing:-2px; }
.platform-section-head > p { max-width:390px; color:#697386; font-size:13px; }
.platform-section-head.centered { justify-content:center; text-align:center; }
.platform-section-head.centered > div { max-width:820px; }

.problem-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:start; }
.problem-grid h2 { font-family:"Manrope",sans-serif; font-size:clamp(36px,4.5vw,58px); font-weight:800; line-height:1.06; letter-spacing:-2px; margin-top:14px; }
.problem-copy > p { color:#667085; font-size:15px; line-height:1.85; margin:0 0 28px; }
.problem-points { display:grid; gap:0; border-top:1px solid #e5e7eb; }
.problem-points > div { display:grid; grid-template-columns:42px 1fr; gap:15px; padding:20px 0; border-bottom:1px solid #e5e7eb; }
.problem-points > div > span { font-size:9px; color:#3157d5; letter-spacing:1px; font-weight:800; padding-top:4px; }
.problem-points p,.problem-points b,.problem-points small { display:block; margin:0; }
.problem-points b { font-size:13px; color:#182235; }
.problem-points small { color:#7a8494; font-size:11px; margin-top:3px; }

.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.feature-grid-premium article { position:relative; background:#fff; border:1px solid #e3e6ea; border-radius:18px; padding:27px; min-height:290px; transition:.2s ease; }
.feature-grid-premium article:hover { transform:translateY(-4px); box-shadow:0 18px 45px rgba(17,24,39,.08); border-color:#d2d9e7; }
.feature-number { position:absolute; top:20px; right:22px; font-size:8px; letter-spacing:1.5px; color:#a1a8b5; font-weight:800; }
.feature-icon { width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:#eef2ff; font-size:20px; margin-bottom:23px; }
.feature-grid article:nth-child(2n) .feature-icon { background:#fff1ed; }
.feature-grid article:nth-child(3n) .feature-icon { background:#fff7df; }
.feature-grid-premium h3 { font-family:"Manrope",sans-serif; font-size:17px; font-weight:800; margin:0 0 8px; }
.feature-grid-premium p { color:#6b7483; font-size:11px; line-height:1.75; margin:0; }
.feature-grid-premium a { position:absolute; bottom:24px; left:27px; color:#3157d5; font-size:10px; font-weight:800; }

.lead-journey-grid { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; gap:13px; align-items:stretch; }
.lead-step { border:1px solid #e3e6ea; border-radius:17px; padding:22px; background:#fff; }
.lead-step > span { color:#3157d5; font-size:9px; font-weight:800; letter-spacing:1px; }
.lead-step-icon { width:42px; height:42px; display:grid; place-items:center; background:#f4f5f7; border-radius:12px; margin:15px 0 13px; }
.lead-step h3 { margin:0 0 5px; font-family:"Manrope",sans-serif; font-size:15px; }
.lead-step p { margin:0; color:#737d8c; font-size:10px; line-height:1.7; }
.lead-step-arrow { display:grid; place-items:center; color:#9aa3b2; font-size:22px; }

.business-type-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }
.business-type-card { padding:21px 12px; background:#fff; border:1px solid #e3e6ea; border-radius:15px; text-align:center; display:flex; flex-direction:column; gap:8px; font-size:11px; transition:.2s ease; }
.business-type-card:hover { transform:translateY(-2px); border-color:#cfd6e3; box-shadow:0 12px 28px rgba(17,24,39,.06); }
.business-type-card span { font-size:24px; }
.business-type-card strong { color:#202938; }
.business-type-card small { color:#929aa7; font-size:8px; }

.pricing-head { margin-bottom:32px; }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; align-items:stretch; }
.pricing-card { position:relative; border:1px solid #e1e5eb; border-radius:20px; padding:30px; background:#fff; box-shadow:0 10px 35px rgba(17,24,39,.035); }
.pricing-card-featured { border:2px solid #3157d5; box-shadow:0 22px 55px rgba(49,87,213,.12); transform:translateY(-8px); }
.pricing-ribbon { position:absolute; top:0; right:24px; transform:translateY(-50%); background:#3157d5; color:#fff; padding:7px 11px; border-radius:999px; font-size:8px; letter-spacing:1px; font-weight:800; }
.pricing-top { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.pricing-label { font-size:9px; letter-spacing:2px; font-weight:800; color:#3157d5; }
.pricing-best { color:#8a93a1; font-size:8px; }
.pricing-card h3 { font-family:"Manrope",sans-serif; font-size:38px; margin:22px 0 5px; letter-spacing:-1px; }
.pricing-card h3 small { font-family:"DM Sans",sans-serif; font-size:10px; color:#8992a0; font-weight:500; letter-spacing:0; }
.pricing-desc { color:#6d7685; font-size:11px; line-height:1.7; min-height:60px; }
.pricing-card ul { list-style:none; padding:0; margin:20px 0 28px; display:grid; gap:10px; border-top:1px solid #edf0f3; padding-top:20px; }
.pricing-card li { position:relative; padding-left:19px; color:#4f5968; font-size:10px; }
.pricing-card li:before { content:"✓"; position:absolute; left:0; color:#3157d5; font-weight:800; }
.pricing-btn { display:flex; align-items:center; justify-content:center; padding:12px 15px; border-radius:9px; background:#111827; color:#fff; font-size:10px; font-weight:800; }
.pricing-btn:hover { background:#263246; }
.pricing-btn-featured { background:#3157d5; }
.pricing-btn-featured:hover { background:#2345b5; }
.pricing-note { text-align:center; color:#8a93a0; font-size:9px; margin:25px auto 0; max-width:720px; }

.platform-dark-section { background:linear-gradient(135deg,#101827,#18243a); color:#fff; }
.demo-business-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:75px; align-items:center; }
.platform-dark-section h2 { color:#fff; font-family:"Manrope",sans-serif; font-size:clamp(36px,4.4vw,57px); font-weight:800; line-height:1.05; letter-spacing:-2px; margin:15px 0; }
.platform-dark-section p { color:#b9c3d2; font-size:13px; max-width:650px; line-height:1.8; margin-bottom:27px; }
.demo-business-card { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); border-radius:22px; padding:30px; box-shadow:0 25px 70px rgba(0,0,0,.22); }
.demo-business-card-logo { width:56px; height:56px; border-radius:16px; display:grid; place-items:center; background:#f1c979; color:#111827; font-weight:900; margin:22px 0 18px; }
.demo-business-card h3 { font-family:"Playfair Display",serif; font-size:28px; margin:0 0 5px; }
.demo-business-card p { margin:0 0 22px; font-size:10px; color:#aab5c5; }
.demo-business-card-actions { display:flex; flex-wrap:wrap; gap:7px; }
.demo-business-card-actions span { padding:7px 9px; border:1px solid rgba(255,255,255,.12); border-radius:999px; font-size:8px; color:#d8deea; }

.testimonial-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.testimonial-grid article { background:#fff; border:1px solid #e3e6ea; padding:28px; border-radius:18px; }
.testimonial-grid .quote { font-family:"Playfair Display",serif; font-size:48px; color:#d7b46b; line-height:.6; }
.testimonial-grid p { color:#5f6978; font-size:12px; min-height:65px; }
.testimonial-grid strong,.testimonial-grid small { display:block; }
.testimonial-grid strong { font-size:11px; }
.testimonial-grid small { color:#9098a5; margin-top:3px; font-size:9px; }

.platform-faq { padding:95px 0; }
.faq-grid { width:min(850px,100%); margin:auto; display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.faq-grid details { background:#fff; border:1px solid #e3e6ea; border-radius:13px; padding:17px 19px; }
.faq-grid summary { cursor:pointer; font-size:11px; font-weight:800; color:#202938; list-style:none; }
.faq-grid summary::-webkit-details-marker { display:none; }
.faq-grid p { color:#727c8b; font-size:10px; line-height:1.7; margin:12px 0 0; }

.platform-cta { background:linear-gradient(135deg,#111827,#243452); color:#fff; padding:100px 0; text-align:center; position:relative; overflow:hidden; }
.platform-cta:before { content:""; position:absolute; width:450px; height:450px; border-radius:50%; background:rgba(49,87,213,.14); right:-180px; top:-240px; }
.platform-cta .platform-kicker { display:block; }
.platform-cta h2 { position:relative; max-width:800px; margin:15px auto 14px; color:#fff; font-family:"Manrope",sans-serif; font-size:clamp(38px,5vw,60px); font-weight:800; line-height:1.05; letter-spacing:-2px; }
.platform-cta p { position:relative; max-width:620px; margin:0 auto; color:#bdc7d6; font-size:13px; }
.platform-actions-center { justify-content:center; position:relative; }

.platform-footer { background:#0b111b; color:#c7cfdb; padding:58px 0 20px; }
.platform-footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr; gap:50px; }
.platform-footer .platform-brand span { border-color:#354155; }
.platform-footer p { color:#8792a2; max-width:440px; font-size:11px; }
.platform-footer strong { display:block; color:#fff; margin-bottom:12px; font-size:11px; }
.platform-footer a:not(.platform-brand) { display:block; color:#9da7b6; font-size:10px; margin:8px 0; }
.platform-footer a:not(.platform-brand):hover { color:#fff; }
.footer-inline-cta { color:#f1c979 !important; font-weight:800; margin-top:17px !important; }
.platform-copyright { border-top:1px solid rgba(255,255,255,.09); margin-top:40px; padding-top:18px; color:#687384; font-size:9px; }

.platform-loader { position:fixed; inset:0; z-index:100; display:grid; place-items:center; align-content:center; gap:8px; background:#0c1320; color:#fff; transition:opacity .4s,visibility .4s; }
.platform-loader.hidden { opacity:0; visibility:hidden; pointer-events:none; }
.loader-orbit { width:58px; height:58px; border:1px solid rgba(255,255,255,.16); border-top-color:#f1c979; border-radius:50%; display:grid; place-items:center; animation:uplivaSpin 1.1s linear infinite; }
.loader-orbit span { width:39px; height:39px; border-radius:11px; display:grid; place-items:center; background:#172235; font-family:"Playfair Display",serif; font-size:20px; animation:uplivaSpinReverse 1.1s linear infinite; }
.platform-loader strong { letter-spacing:4px; font-size:11px; }
.platform-loader > span { color:#8d99aa; font-size:9px; }
@keyframes uplivaSpin { to { transform:rotate(360deg); } }
@keyframes uplivaSpinReverse { to { transform:rotate(-360deg); } }

.platform-page-hero { background:linear-gradient(135deg,#101827,#1b2941); color:#fff; padding:155px 0 80px; }
.platform-page-hero h1 { font-family:"Manrope",sans-serif; font-size:clamp(45px,6vw,72px); margin:15px 0; font-weight:800; letter-spacing:-2px; }
.platform-page-hero p { max-width:720px; color:#c4cdd9; }
.registration-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:60px; align-items:start; }
.registration-info ol { list-style:none; padding:0; margin:30px 0 0; display:grid; gap:20px; }
.registration-info li { display:grid; grid-template-columns:120px 1fr; border-top:1px solid #dce1e8; padding-top:18px; }
.registration-info li strong { color:#182235; }
.registration-info li span { color:#687386; font-size:13px; }
.business-form { background:#fff; border:1px solid #e1e5eb; border-radius:18px; padding:32px; box-shadow:0 15px 45px rgba(17,24,39,.06); }
.business-form .field { margin-bottom:15px; }
.business-form .field input,.business-form .field textarea,.business-form .field select { background:#fff; border-color:#d9dee6; border-radius:8px; }
.business-form .field label { color:#536074; }
.login-wrap { width:min(520px,100%); margin:auto; }
.platform-confirmation { min-height:78vh; }
.business-hero { min-height:680px; background-position:center; background-size:cover; display:flex; align-items:end; padding:150px 0 80px; color:#fff; }
.business-hero h1 { font-family:"Playfair Display",serif; font-size:clamp(52px,7vw,88px); font-weight:500; margin:15px 0; }
.business-hero p { font-size:20px; color:#d7e2dd; }
.business-about-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:end; }
.business-about-grid p { color:#617083; font-size:16px; }
.offer-card img,.catalog-card img { width:100%; height:210px; object-fit:cover; border-radius:12px; margin-bottom:18px; }
.offer-card { position:relative; }
.offer-pill { display:inline-block; background:#eef2ff; color:#3157d5; padding:5px 9px; border-radius:999px; font-size:10px; font-weight:800; }
.catalog-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.catalog-card { border:1px solid #e1e5eb; border-radius:16px; padding:15px; background:#fff; }
.catalog-card img { height:180px; }
.catalog-card small { color:#8190a1; text-transform:uppercase; letter-spacing:1px; font-size:9px; }
.catalog-card h3 { margin:8px 0; }
.catalog-card p { color:#6a7687; font-size:12px; }
.catalog-card strong { color:#2345b5; }
.business-enquiry-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; align-items:start; }
.business-enquiry-grid > div:first-child p { color:#647286; }
.success-banner { margin-top:15px; padding:12px; background:#eaf6ee; color:#286447; border-radius:8px; font-size:12px; }
.admin-body { background:#f3f5f8; min-height:100vh; }
.admin-header { background:#0f1726; color:#cbd3df; padding:15px 0; }
.admin-nav { display:flex; justify-content:space-between; align-items:center; }
.admin-nav .platform-brand span { width:32px; height:32px; }
.admin-nav > span { font-size:11px; }
.admin-page { padding:55px 0 90px; }
.admin-page-wide .container { width:min(1560px, calc(100% - 48px)); }
.admin-head { display:flex; justify-content:space-between; align-items:start; gap:25px; margin-bottom:35px; }
.admin-head h1 { font-family:"Manrope",sans-serif; font-size:50px; font-weight:800; margin:10px 0; letter-spacing:-2px; }
.admin-head p { color:#687386; }
.admin-head-actions { display:flex; gap:10px; align-items:center; }
.admin-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:28px; }
.admin-stats > div { background:#fff; border:1px solid #e1e6ed; border-radius:15px; padding:22px; }
.admin-stats strong,.admin-stats span { display:block; }
.admin-stats strong { font-family:"Manrope",sans-serif; font-size:28px; }
.admin-stats span { color:#718096; font-size:11px; margin-top:4px; }
.admin-table-wrap { overflow:auto; background:#fff; border:1px solid #e1e6ed; border-radius:15px; }
.admin-table { width:100%; border-collapse:collapse; min-width:900px; }
.admin-table th,.admin-table td { padding:18px 20px; text-align:left; border-bottom:1px solid #edf0f4; font-size:13.5px; line-height:1.5; vertical-align:top; }
.admin-table th { background:#f8f9fb; color:#617083; font-size:11px; text-transform:uppercase; letter-spacing:1px; }
.admin-table td small { display:block; color:#8792a1; margin-top:4px; font-size:11.5px; }
.lead-pipeline-table th:last-child, .lead-pipeline-table td:last-child { min-width:300px; }
.admin-actions { display:flex; gap:6px; flex-wrap:wrap; }
.admin-actions button,.admin-actions a,.content-row button { border:1px solid #d2dae5; background:#fff; border-radius:7px; padding:7px 9px; font-size:10px; cursor:pointer; }
/* Business/admin workspace navigation: high-contrast actions on the light workspace surface. */
.workspace-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; flex-wrap:wrap; }
.workspace-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:42px; padding:11px 15px; border:1px solid #cfd7e1; border-radius:10px; background:#ffffff; color:#172033 !important; text-decoration:none !important; font-size:12px; font-weight:800; line-height:1.2; box-shadow:0 6px 18px rgba(17,24,39,.06); transition:background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease; }
.workspace-btn:hover { background:#eef7f2; border-color:#9dbcae; color:#123b2f !important; transform:translateY(-1px); box-shadow:0 9px 22px rgba(17,24,39,.09); }
.workspace-btn:focus-visible, .workspace-top-link:focus-visible, .workspace-backup-actions a:focus-visible { outline:3px solid rgba(241,201,121,.75); outline-offset:2px; }
.workspace-btn-primary { background:#f1c979; border-color:#e5b957; color:#111827 !important; }
.workspace-btn-primary:hover { background:#f6d58e; border-color:#e5b957; color:#111827 !important; }
.workspace-btn-secondary { background:#123b2f; border-color:#123b2f; color:#fff !important; }
.workspace-btn-secondary:hover { background:#1c5543; border-color:#1c5543; color:#fff !important; }
.workspace-page-actions { display:flex; justify-content:flex-end; align-items:center; gap:10px; flex-wrap:wrap; }
.workspace-backup-actions { display:none; }
.workspace-top-actions { display:flex; align-items:center; gap:10px; }
.workspace-top-actions form { margin:0; }
.workspace-top-link { display:inline-flex; align-items:center; justify-content:center; min-height:36px; padding:8px 13px; border:1px solid rgba(255,255,255,.24); border-radius:9px; background:rgba(255,255,255,.08); color:#fff !important; text-decoration:none !important; font-size:11px; font-weight:800; }
.workspace-top-link:hover { background:rgba(255,255,255,.16); border-color:rgba(255,255,255,.4); }
.workspace-top-logout { cursor:pointer; font-family:inherit; }
.business-preview-bar { background:#123b2f; color:#fff; border-bottom:1px solid rgba(255,255,255,.12); }
.business-preview-bar-inner { min-height:38px; display:flex; align-items:center; justify-content:space-between; gap:15px; font-size:11px; }
.business-preview-bar-inner span { color:#dcebe4; }
.business-preview-bar-inner a { display:inline-flex; align-items:center; min-height:28px; padding:5px 10px; border:1px solid rgba(255,255,255,.28); border-radius:7px; color:#fff !important; text-decoration:none !important; font-weight:800; }
.business-preview-bar-inner a:hover { background:rgba(255,255,255,.12); }
@media (max-width:900px) {
    .workspace-actions { justify-content:flex-start; }
    .workspace-page-actions { justify-content:flex-start; }
}
@media (max-width:650px) {
    .workspace-actions .workspace-btn { flex:1 1 100%; }
    .workspace-top-actions .workspace-top-link { padding-left:10px; padding-right:10px; }
    .business-preview-bar-inner { align-items:flex-start; padding-top:8px; padding-bottom:8px; flex-direction:column; }
}

.status-badge { display:inline-block; padding:5px 8px; border-radius:999px; background:#edf0f4; font-size:9px; font-weight:800; }
.status-badge.pending { background:#fff2d8; color:#8a6727; }.status-badge.approved { background:#e7f5eb; color:#2b6847; }.status-badge.rejected { background:#f9e6e3; color:#8b453c; }
.admin-narrow { max-width:900px; }
.content-admin-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.content-admin-grid h2,.content-list h2 { font-family:"Manrope",sans-serif; font-size:28px; margin-top:0; }
.content-list { margin-top:30px; background:#fff; border:1px solid #e1e6ed; border-radius:15px; padding:25px; }
.content-row { display:grid; grid-template-columns:1.5fr 1fr 1fr auto; gap:15px; align-items:center; border-top:1px solid #edf0f4; padding:13px 0; font-size:12px; }
.owner-info-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.owner-info-grid article { background:#fff; border:1px solid #e1e6ed; border-radius:15px; padding:24px; }
.owner-info-grid span { color:#7a8797; font-size:10px; text-transform:uppercase; letter-spacing:1px; }
.owner-info-grid h3 { margin:9px 0; }
.owner-info-grid p { color:#6c7888; font-size:12px; }

@media(max-width:950px){
    .platform-nav nav a:not(.platform-nav-btn):not(:last-of-type){display:none}
    .platform-hero-grid,.problem-grid,.demo-business-grid,.registration-grid,.business-about-grid,.business-enquiry-grid{grid-template-columns:1fr}
    .platform-hero{min-height:auto;padding-top:135px}
    .lead-engine-card{max-width:500px;margin-top:10px}
    .feature-grid,.testimonial-grid,.catalog-grid{grid-template-columns:1fr 1fr}
    .business-type-grid{grid-template-columns:repeat(3,1fr)}
    .lead-journey-grid{grid-template-columns:1fr 1fr}
    .lead-step-arrow{display:none}
    .platform-value-grid{grid-template-columns:1fr 1fr}
    .platform-value-grid > div:nth-child(2){border-right:0}
    .platform-section-head,.admin-head{flex-direction:column;align-items:flex-start}
    .platform-footer-grid,.content-admin-grid,.owner-info-grid{grid-template-columns:1fr}
    .pricing-grid{grid-template-columns:1fr}
    .pricing-card-featured{transform:none}
    .faq-grid{grid-template-columns:1fr}
    .admin-stats{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
    .platform-nav nav{gap:8px}.platform-nav-btn{padding:8px 10px}.platform-brand strong{font-size:12px}
    .platform-hero h1{font-size:47px;letter-spacing:-2px}.platform-hero-lead{font-size:14px}
    .feature-grid,.testimonial-grid,.catalog-grid,.lead-journey-grid{grid-template-columns:1fr}
    .business-type-grid{grid-template-columns:1fr 1fr}
    .platform-value-grid{grid-template-columns:1fr 1fr}
    .platform-value-grid > div{border-right:1px solid var(--platform-line)}
    .platform-value-grid > div:nth-child(even){border-right:0}
    .admin-stats{grid-template-columns:1fr 1fr}
    .admin-head h1{font-size:40px}.business-form{padding:22px}
    .registration-info li{grid-template-columns:1fr;gap:5px}
    .website-preview-content{flex-direction:column}.website-preview-card{width:100%}
    .platform-section{padding:75px 0}.platform-section-head h2{letter-spacing:-1.2px}
}

/* UplivaAI marketing v4 - pearl white / premium growth presentation */
.platform-body { background:#fbfaf7; }
.platform-header { color:#162033; padding:20px 0; }
.platform-brand span { border-color:#d9d6ce; background:#fff; color:#162033; }
.platform-brand strong { color:#162033; }
.platform-nav nav a { color:#3e4757; }
.platform-nav nav a:hover { color:#0f172a; }
.platform-nav-btn { border-color:#cfd4dc; background:#fff; color:#172033 !important; box-shadow:0 5px 16px rgba(19,28,45,.06); }

.pearl-hero { min-height:820px; padding:145px 0 85px; color:#172033; background:radial-gradient(circle at 88% 20%,rgba(215,180,107,.20),transparent 25%),radial-gradient(circle at 8% 75%,rgba(49,87,213,.08),transparent 28%),linear-gradient(135deg,#fffdf9 0%,#f7f5ef 55%,#fffefa 100%); }
.pearl-glow { position:absolute; border-radius:50%; pointer-events:none; filter:blur(3px); }
.pearl-glow-one { width:430px;height:430px;right:-170px;top:70px;background:rgba(215,180,107,.12);box-shadow:0 0 120px rgba(215,180,107,.13); }
.pearl-glow-two { width:300px;height:300px;left:-170px;bottom:-120px;background:rgba(49,87,213,.07); }
.hero-grid-pattern { position:absolute; inset:0; opacity:.30; background-image:linear-gradient(#e7e3da 1px,transparent 1px),linear-gradient(90deg,#e7e3da 1px,transparent 1px); background-size:74px 74px; mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 82%); }
.platform-hero-grid { grid-template-columns:1.03fr .84fr; gap:70px; }
.platform-hero-badge.light-badge { color:#4c5564; border-color:#dcd9d1; background:rgba(255,255,255,.72); }
.platform-hero h1 { color:#111827; }
.platform-hero h1 em { color:#b17c2f; }
.platform-hero-lead { color:#626c7b; }
.platform-btn-outline-dark { border:1px solid #cdd2da; background:#fff; color:#172033; box-shadow:0 7px 20px rgba(20,30,45,.05); }
.dark-proof span { color:#536073; }
.dark-proof b { color:#3157d5; }
.light-note { border-color:#dedbd3 !important; color:#667085; }
.light-note strong { color:#1f2937; }

.growth-dashboard-card { border:1px solid #dedbd3; border-radius:25px; background:rgba(255,255,255,.86); box-shadow:0 28px 80px rgba(30,39,58,.13); padding:19px; backdrop-filter:blur(16px); position:relative; overflow:hidden; }
.growth-dashboard-card:before { content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,255,255,.75),rgba(245,241,230,.45)); pointer-events:none; }
.growth-card-top,.growth-metric-row,.growth-chat,.growth-flow,.growth-alert { position:relative; z-index:1; }
.growth-card-top { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:2px 2px 15px; border-bottom:1px solid #ece9e2; }
.growth-card-top small { display:block; color:#8a92a0; letter-spacing:1.4px; font-size:7px; font-weight:800; }
.growth-card-top strong { display:block; color:#182235; font-size:13px; margin-top:3px; }
.ai-chip { font-size:7px; letter-spacing:1px; font-weight:900; color:#3157d5; background:#eef2ff; border:1px solid #d9e0ff; border-radius:999px; padding:7px 9px; }
.growth-metric-row { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:12px 0; }
.growth-metric-row div { border:1px solid #e7e4dc; background:#fff; border-radius:12px; padding:11px; display:flex; justify-content:space-between; align-items:center; }
.growth-metric-row span { font-size:8px; color:#788292; }
.growth-metric-row b { font-size:12px; color:#3157d5; }
.growth-chat { background:#f4f5f7; border:1px solid #e4e6e9; border-radius:16px; padding:13px; }
.chat-head { display:flex; align-items:center; gap:8px; padding-bottom:10px; border-bottom:1px solid #e2e4e8; }
.chat-avatar { width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#162033;color:#fff;font-size:9px;font-weight:800; }
.chat-head b,.chat-head small { display:block; }
.chat-head b { font-size:9px; color:#182235; }
.chat-head small { font-size:7px; color:#8a93a1; }
.chat-head i { margin-left:auto; font-style:normal; color:#8d95a1; font-size:9px; }
.chat-bubble { width:78%; padding:9px 10px; border-radius:12px; margin-top:9px; font-size:8px; line-height:1.45; }
.chat-bubble.customer { background:#fff; color:#4b5563; border:1px solid #e5e7eb; }
.chat-bubble.business { margin-left:auto; background:#e7ecff; color:#25345f; border:1px solid #d7dfff; }
.chat-actions { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; margin-top:10px; }
.chat-actions span { background:#fff; border:1px solid #e0e3e7; border-radius:8px; padding:7px 4px; text-align:center; font-size:7px; font-weight:800; color:#3e4858; }
.growth-flow { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:center; gap:6px; margin:14px 2px; }
.growth-flow div { padding:9px 5px; text-align:center; }
.growth-flow span,.growth-flow b,.growth-flow small { display:block; }
.growth-flow span { color:#3157d5; font-size:7px; font-weight:900; }
.growth-flow b { color:#1e293b; font-size:8px; margin-top:2px; }
.growth-flow small { color:#9299a5; font-size:6.5px; margin-top:1px; }
.growth-flow i { font-style:normal; color:#b1b7c0; }
.growth-alert { display:flex; align-items:center; gap:9px; background:#f7f3e8; border:1px solid #eadfca; border-radius:12px; padding:10px; }
.growth-alert > span { color:#3f8a61; font-size:10px; }
.growth-alert b,.growth-alert small { display:block; }
.growth-alert b { color:#344054; font-size:8px; }
.growth-alert small { color:#7e8795; font-size:6.5px; margin-top:1px; }
.growth-alert > strong { margin-left:auto; color:#a57a32; font-size:7px; letter-spacing:1px; }

.proof-strip { background:#fff; border-top:1px solid #e7e4dd; border-bottom:1px solid #e7e4dd; }
.proof-strip-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.proof-strip-grid > div { padding:25px 20px; border-right:1px solid #e9e6df; }
.proof-strip-grid > div:last-child { border-right:0; }
.proof-strip-grid strong,.proof-strip-grid span,.proof-strip-grid small { display:block; }
.proof-strip-grid strong { font-family:"Manrope",sans-serif; color:#162033; font-size:23px; letter-spacing:-.5px; }
.proof-strip-grid span { color:#344054; font-size:10px; font-weight:800; margin-top:2px; }
.proof-strip-grid small { color:#9aa1ac; font-size:7px; margin-top:3px; }

.pearl-section { background:#fffdf9; }
.big-section-copy { color:#667085; font-size:14px; line-height:1.9; max-width:620px; }
.why-traditional-grid { align-items:center; }
.leak-card { border:1px solid #e0ddd5; background:#fff; border-radius:22px; box-shadow:0 18px 45px rgba(27,35,50,.07); padding:8px 18px 15px; }
.leak-head { display:flex; justify-content:space-between; padding:14px 3px 12px; color:#9299a5; font-size:8px; letter-spacing:1.6px; font-weight:800; border-bottom:1px solid #ece9e2; }
.leak-head b { color:#a27632; }
.leak-item { display:grid; grid-template-columns:28px 1fr auto; gap:11px; align-items:center; padding:16px 3px; border-bottom:1px solid #efede8; }
.leak-item > span { color:#3157d5; font-size:8px; font-weight:900; }
.leak-item b,.leak-item small { display:block; }
.leak-item b { color:#273244; font-size:10px; }
.leak-item small { color:#8a93a1; font-size:8px; line-height:1.5; margin-top:2px; }
.leak-item > strong { color:#b17c2f; font-size:7px; letter-spacing:1px; }
.leak-footer { display:flex; justify-content:space-between; gap:15px; padding:15px 3px 2px; }
.leak-footer b { color:#172033; font-size:10px; }
.leak-footer span { color:#3157d5; font-size:8px; font-weight:800; }

.ai-section { background:#f4f6fb; }
.ai-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.ai-grid article { background:#fff; border:1px solid #e0e4ec; border-radius:18px; padding:24px; min-height:260px; position:relative; box-shadow:0 10px 25px rgba(28,40,66,.04); }
.ai-grid article > span { position:absolute; top:18px; right:20px; font-size:8px; color:#a2a9b5; font-weight:900; }
.ai-icon { width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#eef2ff;color:#3157d5;font-size:20px;margin-bottom:20px; }
.ai-grid h3 { font-size:16px; margin:0 0 8px; color:#172033; }
.ai-grid p { color:#6d7787; font-size:10px; line-height:1.75; }
.ai-grid article > b { display:inline-block; margin-top:12px; color:#8a93a1; font-size:7px; letter-spacing:.7px; text-transform:uppercase; }
.ai-note { margin-top:16px; padding:15px 18px; background:#fff; border:1px solid #dfe3eb; border-radius:13px; display:flex; gap:18px; align-items:center; }
.ai-note strong { color:#26344b; font-size:10px; }
.ai-note span { color:#7b8492; font-size:9px; }

.feature-grid-expanded article { min-height:270px; }
.enhanced-journey .lead-step { box-shadow:0 9px 25px rgba(20,30,45,.04); }
.business-flow-card { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; align-items:stretch; gap:10px; background:#fff; border:1px solid #e2e0d9; border-radius:20px; padding:14px; }
.business-flow-card > div { padding:20px 15px; border-radius:14px; background:#fbfaf7; }
.business-flow-card span,.business-flow-card b,.business-flow-card small { display:block; }
.business-flow-card span { color:#3157d5; font-size:8px; font-weight:900; }
.business-flow-card b { color:#202b3d; font-size:12px; margin-top:6px; }
.business-flow-card small { color:#7c8593; font-size:8px; line-height:1.55; margin-top:3px; }
.business-flow-card > i { display:grid; place-items:center; color:#a3aab5; font-style:normal; }
.platform-callout { margin-top:18px; padding:18px 20px; border:1px solid #e6dfcf; border-radius:15px; background:#fffbf2; display:flex; gap:15px; align-items:center; }
.platform-callout strong { color:#8e672d; font-size:10px; }
.platform-callout span { color:#7b8490; font-size:9px; }

.testimonials-section { background:#f4f4f1; }
.testimonial-disclaimer { max-width:420px !important; font-size:9px !important; color:#8b93a0 !important; }
.testimonial-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.testimonial-grid article { background:#fff; border:1px solid #e0e1dc; border-radius:18px; padding:22px; box-shadow:0 10px 25px rgba(30,35,45,.035); }
.stars { color:#c18a35; letter-spacing:2px; font-size:11px; }
.testimonial-grid article p { color:#586274; font-size:10px; line-height:1.8; min-height:110px; }
.testimonial-grid footer { display:flex; gap:9px; align-items:center; border-top:1px solid #ecece8; padding-top:13px; }
.testimonial-avatar { width:30px;height:30px;border-radius:50%;background:#172033;color:#fff;display:grid;place-items:center;font-size:8px;font-weight:800; }
.testimonial-grid footer b,.testimonial-grid footer small { display:block; }
.testimonial-grid footer b { color:#273244; font-size:9px; }
.testimonial-grid footer small { color:#8b93a0; font-size:7px; margin-top:1px; }

.premium-cta { background:linear-gradient(135deg,#152033,#23304a); }
.cta-inner-premium { display:flex; justify-content:space-between; gap:50px; align-items:center; }
.cta-inner-premium h2 { color:#fff; font-family:"Manrope",sans-serif; font-weight:800; font-size:clamp(35px,4.3vw,56px); letter-spacing:-2px; line-height:1.06; margin:10px 0 14px; }
.cta-inner-premium p { color:#b9c2d0; max-width:650px; font-size:13px; }
.platform-btn-ghost-light { border:1px solid rgba(255,255,255,.28); color:#fff; background:rgba(255,255,255,.04); }

@media (max-width:900px) {
    .platform-hero-grid { grid-template-columns:1fr; }
    .growth-dashboard-card { max-width:620px; width:100%; margin:auto; }
    .proof-strip-grid { grid-template-columns:1fr 1fr; }
    .proof-strip-grid > div:nth-child(2) { border-right:0; }
    .proof-strip-grid > div:nth-child(-n+2) { border-bottom:1px solid #e9e6df; }
    .ai-grid { grid-template-columns:1fr 1fr; }
    .testimonial-grid { grid-template-columns:1fr 1fr; }
    .business-flow-card { grid-template-columns:1fr 1fr; }
    .business-flow-card > i { display:none; }
    .cta-inner-premium { flex-direction:column; align-items:flex-start; }
}
@media (max-width:650px) {
    .platform-header { position:absolute; }
    .platform-nav nav a:not(.platform-nav-btn) { display:none; }
    .pearl-hero { padding-top:125px; }
    .platform-hero h1 { font-size:44px; letter-spacing:-2px; }
    .proof-strip-grid { grid-template-columns:1fr; }
    .proof-strip-grid > div { border-right:0; border-bottom:1px solid #e9e6df; }
    .proof-strip-grid > div:last-child { border-bottom:0; }
    .ai-grid,.testimonial-grid { grid-template-columns:1fr; }
    .ai-note,.platform-callout { align-items:flex-start; flex-direction:column; }
    .growth-flow { grid-template-columns:1fr; gap:3px; }
    .growth-flow i { transform:rotate(90deg); }
    .business-flow-card { grid-template-columns:1fr; }
    .platform-section { padding:78px 0; }
}


/* UplivaAI save/result toast */
.upliva-toast {
    position: fixed;
    top: 82px;
    right: 24px;
    z-index: 2000;
    width: min(430px, calc(100vw - 32px));
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 15px 16px;
    border-radius: 14px;
    background: #ffffff;
    border: 1px solid #dfe7e2;
    box-shadow: 0 16px 40px rgba(24, 34, 28, .16);
    animation: uplivaToastIn .25s ease-out;
}
.upliva-toast-success { border-left: 4px solid #159447; }
.upliva-toast-error { border-left: 4px solid #d63b3b; }
.upliva-toast-info { border-left: 4px solid #3178c6; }
.upliva-toast-icon {
    width: 30px; height: 30px; border-radius: 50%;
    display: grid; place-items: center; flex: 0 0 30px;
    font-weight: 800; background: #eef8f1; color: #168344;
}
.upliva-toast-error .upliva-toast-icon { background: #fff0f0; color: #c62828; }
.upliva-toast-info .upliva-toast-icon { background: #eef5ff; color: #2466a8; }
.upliva-toast-body { display: flex; flex-direction: column; gap: 3px; line-height: 1.35; }
.upliva-toast-body strong { font-size: 14px; color: #172019; }
.upliva-toast-body span { font-size: 13px; color: #5e6b63; }
.upliva-toast-close { margin-left: auto; border: 0; background: transparent; color: #78837c; font-size: 22px; line-height: 1; cursor: pointer; padding: 0 2px; }
@keyframes uplivaToastIn { from { opacity: 0; transform: translateY(-10px) translateX(8px); } to { opacity: 1; transform: translateY(0) translateX(0); } }
@media (max-width: 640px) { .upliva-toast { top: 70px; right: 16px; left: 16px; width: auto; } }

.field-validation { display:block; margin-top:5px; color:#b42318; font-size:12px; }
.platform-btn:disabled { opacity:.65; cursor:wait; }
.required-label { display:inline-block; margin-left:7px; font-size:11px; font-weight:700; color:#0b5d4e; text-transform:uppercase; letter-spacing:.04em; }
.business-form .validation ul { color:#8e4035; }

.admin-marketing-link{margin:14px 0 20px;padding:16px 18px;background:#f1f8f4;border:1px solid #dbe9e1;border-radius:14px;display:flex;justify-content:space-between;gap:15px;align-items:center}.admin-marketing-link a{font-weight:800;color:#063b2f;text-decoration:none}.admin-marketing-link span{font-size:12px;color:#68766f}.admin-primary-link{display:inline-flex;align-items:center;padding:11px 16px;border-radius:10px;background:#063b2f;color:#fff;text-decoration:none;font-weight:800;font-size:12px}.admin-note-card{margin-top:18px;padding:16px 18px;border:1px solid #e0e7e3;border-radius:14px;background:#fff;display:flex;gap:12px;flex-direction:column}.admin-note-card strong{font-weight:800}.admin-note-card span{font-size:12px;color:#68766f;line-height:1.6}


/* Lead-only registration and lead lifecycle UI - additive, does not replace existing styles. */
.registration-lead-only { align-items:center; }
.registration-lead-copy { max-width:540px; font-size:16px; line-height:1.75; color:#617083; margin:14px 0 26px; }
.registration-steps { display:grid; gap:12px; max-width:560px; }
.registration-steps > div { display:grid; grid-template-columns:42px 1fr; column-gap:12px; padding:14px 0; border-top:1px solid #e7eaf0; }
.registration-steps span { grid-row:span 2; width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:#f1f4f8; color:#3157d5; font-size:10px; font-weight:800; }
.registration-steps strong { color:#172235; font-size:13px; }
.registration-steps small { color:#7b8797; font-size:11px; line-height:1.5; margin-top:3px; }
.lead-registration-card { padding:34px; }
.lead-form-heading h3 { margin:8px 0 8px; font-size:28px; color:#172235; }
.lead-form-heading p { margin:0 0 24px; color:#748094; font-size:12px; line-height:1.65; }
.lead-form-fields { display:grid; grid-template-columns:1fr; gap:2px; }
.lead-submit-btn { margin-top:8px; width:100%; }
.lead-privacy-note { margin:12px 0 0; text-align:center; color:#8993a1; font-size:10px; line-height:1.5; }
.lead-success-card h1 { max-width:700px; margin-left:auto; margin-right:auto; }
.lead-success-note { margin:22px 0; padding:16px 18px; border:1px solid #e2e7ef; border-radius:12px; background:#f8fafc; text-align:left; }
.lead-success-note strong,.lead-success-note span { display:block; }
.lead-success-note strong { color:#172235; margin-bottom:5px; }
.lead-success-note span { color:#687587; font-size:12px; line-height:1.6; }
.lead-pipeline-table { min-width:1180px; }
.lead-status { display:inline-flex; padding:5px 8px; border-radius:999px; background:#eef2f7; color:#4d5c70; font-size:10px; font-weight:800; }
.lead-status-confirmed,.lead-status-converted { background:#e8f7ed; color:#287447; }
.lead-status-interested { background:#fff5df; color:#8b641e; }
.lead-status-notinterested { background:#f9eaea; color:#934949; }
.lead-status-form { display:flex; align-items:center; gap:6px; }
.lead-status-form select { min-width:120px; padding:7px 8px; border:1px solid #d9dee6; border-radius:7px; background:#fff; font-size:11px; }
.lead-status-form .workspace-btn { padding:7px 10px; font-size:10px; }
@media (max-width:760px) { .lead-registration-card { padding:22px; } .registration-steps { max-width:none; } .admin-stats { grid-template-columns:1fr 1fr; } }

/* Lead pipeline v2 - additive only. */
.lead-source { display:block; margin-top:4px; color:#8b95a4; font-size:9px; }
.lead-notes-cell { max-width:220px; white-space:normal; line-height:1.45; color:#596678; }
.lead-actions-stack { display:flex; flex-direction:column; gap:7px; min-width:300px; }
.lead-update-form { display:grid; grid-template-columns:120px 190px 1fr auto; gap:6px; align-items:center; }
.lead-update-form select,.lead-update-form input { min-width:0; padding:7px 8px; border:1px solid #d9dee6; border-radius:7px; background:#fff; font-size:10px; }
.workspace-btn-danger { border:1px solid #e5caca; background:#fff5f5; color:#9a3f3f; padding:7px 10px; border-radius:7px; font-size:10px; cursor:pointer; }
@media(max-width:1100px) { .lead-update-form { grid-template-columns:1fr 1fr; } .lead-actions-stack { min-width:240px; } }

.admin-section-heading{margin:18px 0 10px;display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.admin-section-heading strong{display:block;color:#16342b;font-size:15px}.admin-section-heading span{display:block;margin-top:4px;color:#718078;font-size:11px;line-height:1.5}.approval-lead-row{background:#fcfefd}.approval-lead-row td{vertical-align:middle}.approval-lead-row .workspace-btn{white-space:nowrap}

/* UplivaAI plan-first admin dashboard */
.admin-plan-grid{display:grid;grid-template-columns:1fr;gap:22px;margin-top:22px}
.admin-plan-card{background:#fff;border:1px solid #e1e6ed;border-radius:18px;padding:18px;overflow:hidden}
.admin-plan-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px}
.admin-plan-card-head h2{margin:5px 0 3px;color:#123a2f;font-size:20px}
.admin-plan-card-head p{margin:0;color:#718078;font-size:12px;line-height:1.5}
.admin-plan-card-head>strong{min-width:42px;height:42px;border-radius:12px;background:#edf8f3;color:#07553f;display:flex;align-items:center;justify-content:center;font-size:16px}
.admin-plan-table-wrap{border-radius:12px}
.admin-plan-table{min-width:980px}
.admin-plan-actions{min-width:230px}
.admin-empty-cell{color:#687284!important;text-align:center!important;padding:24px!important}
@media (min-width:1200px){.admin-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-plan-card{min-width:0}}

/* Plan dashboard v3: full-width categories + business selector. */
.admin-wide{max-width:1500px!important}
.admin-plan-dashboard .admin-head{margin-bottom:18px}
.admin-dashboard-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid #e1e6ed;border-radius:18px;padding:18px 20px;margin-bottom:22px}
.business-selector-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;min-width:min(100%,620px)}
.business-selector-form .field{min-width:min(100%,520px);margin:0}
.business-selector-form label{display:block;margin-bottom:6px;color:#5e6b7c;font-size:11px;font-weight:800;letter-spacing:.7px;text-transform:uppercase}
.business-selector-form select{width:100%;height:42px;border:1px solid #d9e1e7;border-radius:10px;background:#fff;padding:0 12px;color:#18362d;font-size:13px}
.admin-dashboard-summary{display:flex;gap:10px;flex-wrap:wrap}
.admin-dashboard-summary>div{min-width:110px;padding:9px 14px;border-radius:12px;background:#edf8f3;text-align:center}
.admin-dashboard-summary strong,.admin-dashboard-summary span{display:block}
.admin-dashboard-summary strong{font-size:18px;color:#07553f}
.admin-dashboard-summary span{font-size:10px;color:#617267;margin-top:2px}
.admin-plan-grid-large{grid-template-columns:1fr!important;gap:20px;margin-top:0}
.admin-plan-card-full{width:100%;padding:22px}
.admin-plan-card-full .admin-plan-table-wrap{width:100%;overflow-x:auto}
.admin-plan-card-full .admin-plan-table{width:100%;min-width:1000px}
.admin-plan-card-full .admin-plan-card-head h2{font-size:25px}
.admin-plan-card-full .admin-plan-card-head p{font-size:13px}
.admin-plan-actions{display:flex;flex-wrap:wrap;gap:8px;min-width:280px}
@media(max-width:760px){.admin-dashboard-toolbar{align-items:stretch}.business-selector-form,.business-selector-form .field{width:100%;min-width:0}.admin-dashboard-summary{width:100%}.admin-dashboard-summary>div{flex:1}.admin-plan-card-full{padding:14px}.admin-plan-card-full .admin-plan-card-head h2{font-size:20px}}


/* Catalog edit success confirmation. The successful POST redirects back to the
   catalog list, which closes the edit panel; this banner makes the result explicit. */
.catalog-save-success {
    display:flex; align-items:center; gap:12px; margin:0 0 18px; padding:14px 16px;
    border:1px solid #b9e2c8; border-left:4px solid #159447; border-radius:12px;
    background:#f2fbf5; color:#1d4b2d; box-shadow:0 4px 16px rgba(20,60,35,.06);
}
.catalog-save-success-icon {
    width:30px; height:30px; border-radius:50%; display:grid; place-items:center;
    background:#159447; color:#fff; font-weight:700; flex:0 0 auto;
}
.catalog-save-success div { display:flex; flex-direction:column; gap:3px; flex:1; }
.catalog-save-success strong { font-size:14px; }
.catalog-save-success span:not(.catalog-save-success-icon) { font-size:13px; color:#587061; }
.catalog-save-success button { border:0; background:transparent; font-size:22px; cursor:pointer; color:#617066; }
.business-selector-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.inline-business-delete { display:inline-flex; margin:0; }
.footer-contact {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 28px;
    padding-top: 22px;
    font-size: 14px;
    color: #d4e4dd;
}

    .footer-contact a {
        color: #d4e4dd;
        text-decoration: none;
        overflow-wrap: anywhere;
    }

        .footer-contact a:hover {
            color: #fff;
            text-decoration: underline;
        }

@media (max-width: 600px) {
    .footer-contact {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }
}