:root{--bg:#ffffff;--ink:#0f172a;--muted:#64748b;--brand:#7e22ce;--brand-ink:#5b21b6;--card:#faf5ff;--border:#e9d5ff}
*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.container{max-width:1120px;margin:0 auto;padding:24px}.row{display:flex;align-items:center;justify-content:space-between;gap:16px}
.site-header{position:sticky;top:0;background:rgba(255,255,255,.97);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--border);z-index:10}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:inherit;font-weight:700}
.brand img{border-radius:6px}
.nav a{margin-left:16px;color:inherit;text-decoration:none}.nav a:hover{text-decoration:underline}
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#faf5ff,#f5f3ff)}
.hero-inner{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:24px}
.hero .lead{color:var(--muted)}
.btn{display:inline-block;padding:10px 16px;border-radius:14px;border:1px solid var(--border);text-decoration:none;font-weight:600;transition:.15s all ease}
.btn-primary{background:var(--brand);color:#fff;border-color:var(--brand)}.btn-primary:hover{background:var(--brand-ink)}
.btn-outline{background:transparent}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}.badges{display:flex;gap:16px;list-style:none;padding:0;margin:8px 0 0;color:var(--muted)}.badges img{vertical-align:middle;margin-right:6px}
h1{font-size:36px;line-height:1.2;margin:0 0 8px}h2{font-size:26px;margin:32px 0 10px}h3{font-size:19px;margin:0 0 6px}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px}
.card .icon{opacity:.9}.muted{color:var(--muted)}
/* Accordion styles */
.accordion details{background:#fff;border:1px solid var(--border);border-radius:12px;padding:10px 14px;margin:10px 0}
.accordion summary{cursor:pointer;font-weight:600}
/* Team styles */
.team .portrait{width:100%;height:260px;object-fit:cover;border-radius:12px;border:1px solid var(--border);background:#fff}
.team details summary{cursor:pointer;font-weight:600}
.team details{margin-top:auto}
.team h4{margin:12px 0 6px;font-size:16px}
.flags{display:inline-flex;gap:4px;align-items:baseline;margin-left:.35em}
.flags img{width:16px;height:12px;object-fit:cover;border:1px solid #e2e8f0;border-radius:2px;vertical-align:baseline}
.highlight{background:#f3e8ff;border:1px solid #e9d5ff;border-radius:16px;padding:14px}
.highlight h2{margin:6px 0 4px}
.highlight p{margin:0 0 8px}
.site-footer{border-top:1px solid var(--border);margin-top:40px}.site-footer .footer-links{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:8px}
.footer-contact{margin:8px 0 4px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.map{width:100%;height:280px;border:1px solid var(--border);border-radius:12px}
.sticky-bar{display:none;position:fixed;left:0;right:0;bottom:0;padding:10px;border-top:1px solid var(--border);background:#ffffffee;backdrop-filter:blur(6px);gap:10px;justify-content:center}
@media (max-width: 900px){.hero-inner{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.sticky-bar{display:flex}h1{font-size:28px}}

/* Carousel */
.carousel{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--border);background:#000}
.carousel-track{display:flex;transition:transform .35s ease;will-change:transform}
.carousel-slide{min-width:100%;height:320px;position:relative}
.carousel-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);border:1px solid var(--border);background:#ffffffcc;backdrop-filter:blur(6px);padding:6px 10px;border-radius:12px;font-size:22px;line-height:1;cursor:pointer}
.carousel-btn:hover{background:#fff}
.carousel-btn.prev{left:8px}.carousel-btn.next{right:8px}
.carousel-dots{position:absolute;left:0;right:0;bottom:8px;display:flex;gap:6px;justify-content:center}
.carousel-dots .dot{width:10px;height:10px;border-radius:999px;border:1px solid #fff;background:#ffffff66;text-indent:-9999px}
.carousel-dots .dot.is-active{background:#fff}
@media (max-width:900px){.carousel-slide{height:240px}}

/* Align CTAs across cards */
.cards .card{display:flex;flex-direction:column}
.cards .card .cta-row{margin-top:auto}

/* Price table accordion */
.price-accordion{background:#fff;border:1px solid var(--border);border-radius:12px;padding:10px 12px}
.price-accordion > summary{cursor:pointer;font-weight:700;list-style:none}
.price-accordion > summary::-webkit-details-marker{display:none}
.price-accordion[open]{box-shadow:0 1px 0 rgba(0,0,0,.02)}
.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px;background:#fff;margin-top:10px}
.price-table{width:100%;border-collapse:collapse;min-width:560px}
.price-table th,.price-table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}
.price-table thead th{background:#faf5ff;font-weight:700}
.price-table tbody tr:last-child td{border-bottom:none}
.price-table td:last-child{white-space:nowrap;font-weight:600}

/* Trust bar */
.trustbar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff}
.trust-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px}
.trust-inner .lock{font-weight:700}
.trust-inner .brands{display:flex;gap:14px;align-items:center;opacity:.9}
.trust-inner img{display:block;filter:grayscale(10%);}