:root{
    --ink:#14100d;
    --ink-soft:#2a1a10;
    --cream:#fbf7ef;
    --cream-2:#fdf3ea;
    --pink:#ef2f66;
    --pink-dark:#d21f52;
    --brown-text:#6b5847;
    --line:rgba(42,26,16,.1);
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  a{color:inherit;text-decoration:none;}
  body{background:var(--cream);font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--ink-soft);overflow-x:hidden;}
  h1,h2,h3,.disp{font-family:'Manrope',sans-serif;letter-spacing:-.02em;}
  img{max-width:100%;display:block;}
  .wrap{max-width:1200px;margin:0 auto;padding:0 56px;}
  @media(max-width:768px){.wrap{padding:0 22px;}}

  .btn{display:inline-flex;align-items:center;gap:8px;background:var(--pink);color:#fff;font-weight:700;font-size:16px;padding:15px 34px;border-radius:999px;border:none;cursor:pointer;box-shadow:0 12px 30px -10px rgba(239,47,102,.6);transition:transform .18s ease, box-shadow .18s ease, background .18s ease;}
  .btn:hover{transform:translateY(-2px);background:var(--pink-dark);}
  .btn-dark{background:var(--ink-soft);box-shadow:none;border-radius:14px;padding:15px 26px;}
  .btn-dark:hover{background:var(--ink);}
  .btn-outline{background:transparent;border:1.5px solid rgba(255,255,255,.5);color:#fff;box-shadow:none;}
  .btn-outline:hover{background:rgba(255,255,255,.12);}

  .eyebrow{display:inline-block;background:#f4e3d5;color:#9a5b3d;font-size:13px;font-weight:700;letter-spacing:.06em;padding:8px 16px;border-radius:999px;margin-bottom:20px;text-transform:uppercase;}

  /* ===== NAV ===== */
  header.site-nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:20px 40px;transition:background .25s ease, padding .25s ease, box-shadow .25s ease;}
  header.site-nav.solid{background:rgba(251,247,239,.92);backdrop-filter:blur(10px);padding:14px 40px;box-shadow:0 8px 24px -16px rgba(20,12,6,.25);}
  .logo{display:flex;align-items:center;gap:10px;}
  .logo span{font-family:'Manrope',sans-serif;font-weight:800;font-size:23px;letter-spacing:-.01em;color:#fff;transition:color .25s ease;}
  header.site-nav.solid .logo span{color:var(--ink-soft);}
  header.site-nav.solid .logo svg path, header.site-nav.solid .logo svg circle{stroke:var(--ink-soft);}
  .nav-links{display:flex;align-items:center;gap:36px;}
  .nav-links a{font-size:15px;font-weight:600;color:#fff;transition:color .2s ease;}
  header.site-nav.solid .nav-links a{color:var(--ink-soft);}
  .nav-links a:hover{color:var(--pink);}
  .nav-cta{display:flex;align-items:center;gap:18px;}
  .nav-cta .btn{padding:12px 26px;font-size:15px;}
  .menu-btn{display:none;border:none;background:rgba(255,255,255,.15);width:44px;height:44px;border-radius:12px;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:4px;}
  .menu-btn span{width:18px;height:2px;background:#fff;border-radius:2px;}
  header.site-nav.solid .menu-btn{background:rgba(42,26,16,.08);}
  header.site-nav.solid .menu-btn span{background:var(--ink-soft);}
  @media(max-width:900px){
    .nav-links{position:fixed;top:0;right:-100%;height:100vh;width:78%;max-width:340px;background:var(--ink);flex-direction:column;justify-content:center;align-items:flex-start;padding:40px;gap:26px;transition:right .3s ease;z-index:60;}
    .nav-links.open{right:0;}
    .nav-links a{color:#fff;font-size:20px;}
    .nav-cta{display:none;}
    .menu-btn{display:flex;}
  }

  /* ===== HERO ===== */
  .hero{position:relative;height:100vh;min-height:640px;background:var(--ink);}
  .hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center;}
  .hero .scrim{position:absolute;inset:0;background:linear-gradient(180deg, rgba(20,12,6,.05) 20%, rgba(20,12,6,.65) 100%);}
  .pill{display:flex;align-items:center;gap:14px;background:rgba(244,238,231,.95);backdrop-filter:blur(8px);border-radius:16px;padding:14px 20px 14px 14px;box-shadow:0 12px 30px -12px rgba(60,30,10,.45);}
  .pill .ic{flex:none;width:44px;height:44px;border-radius:12px;background:var(--pink);display:flex;align-items:center;justify-content:center;}
  .pill span.txt{font-size:15px;line-height:1.35;font-weight:500;color:var(--ink-soft);}
  .hero .pill-wrap{position:absolute;top:110px;left:15%;z-index:4;max-width:320px;animation:popIn .7s cubic-bezier(.34,1.56,.64,1) .4s both;}
  @keyframes popIn{0%{opacity:0;transform:scale(.6) translateY(14px);}60%{opacity:1;transform:scale(1.04) translateY(-2px);}100%{opacity:1;transform:scale(1) translateY(0);}}
  .hero .copy{position:absolute;left:56px;bottom:100px;max-width:600px;z-index:3;}
  .hero h1{font-weight:800;font-size:52px;line-height:1.03;color:#fff;text-transform:uppercase;margin-bottom:20px;}
  .hero p{font-size:19px;line-height:1.5;color:rgba(255,255,255,.92);margin-bottom:32px;max-width:480px;}
  .badges{position:absolute;right:40px;bottom:100px;z-index:3;display:flex;flex-direction:column;gap:14px;}
  .badge{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.94);backdrop-filter:blur(6px);border-radius:14px;padding:13px 20px;min-width:186px;transition:transform .18s ease;}
  .badge:hover{transform:translateY(-2px);}
  .badge .l{font-size:11px;color:var(--brown-text);}
  .badge .r{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:700;color:var(--ink-soft);}
  .scroll-cue{position:absolute;left:56px;bottom:32px;z-index:3;display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.75);font-size:13px;letter-spacing:.05em;}
  .scroll-cue .ln{width:1px;height:26px;background:rgba(255,255,255,.5);animation:pulse 1.8s ease infinite;}
  @keyframes pulse{0%,100%{opacity:.3;}50%{opacity:1;}}
  @media(max-width:900px){
    .hero h1{font-size:34px;}
    .hero .copy{left:22px;right:22px;bottom:110px;max-width:none;}
    .badges{display:none;}
    .pill-wrap{left:4px;top:70px;max-width:250px;}
    .scroll-cue{display:none;}
  }

  /* ===== STATS ===== */
  .stats{padding:80px 0 40px;}
  .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center;}
  .stat-num{font-weight:800;font-size:44px;color:var(--pink);letter-spacing:-.02em;}
  .stat-label{font-size:15px;color:var(--brown-text);margin-top:6px;}
  @media(max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr);row-gap:36px;}}

  /* ===== FEATURE CARDS ===== */
  .cards{padding:60px 0 90px;}
  .cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .fcard{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:100/128;box-shadow:0 20px 45px -24px rgba(60,30,10,.4);background:#3a2c22;transition:transform .22s ease, box-shadow .22s ease;}
  .fcard:hover{transform:translateY(-6px);box-shadow:0 30px 55px -24px rgba(60,30,10,.45);}
  .fcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
  .fcard .grad{position:absolute;inset:0;background:linear-gradient(180deg, rgba(20,12,6,.3) 0%, rgba(20,12,6,0) 28%, rgba(20,12,6,0) 55%, rgba(20,12,6,.78) 100%);}
  .fcard .tag{position:absolute;top:30px;left:30px;font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;letter-spacing:.08em;color:#fff;text-transform:uppercase;}
  .fcard p{position:absolute;left:30px;right:86px;bottom:30px;font-size:19px;line-height:1.35;font-weight:500;color:#fff;}
  .fcard .go{position:absolute;right:26px;bottom:26px;width:50px;height:50px;border-radius:999px;background:var(--pink);display:flex;align-items:center;justify-content:center;color:#fff;font-size:19px;}
  @media(max-width:900px){.cards-grid{grid-template-columns:1fr;} .fcard{aspect-ratio:auto;height:340px;}}

  /* ===== LEGWORK BIG TYPE ===== */
  .legwork{max-width:1760px;margin:0 auto;padding:40px 40px 90px;}
  .legwork h2{font-weight:800;font-size:clamp(46px,10.5vw,166px);line-height:.94;letter-spacing:-.02em;text-transform:uppercase;}
  .legwork .line{display:block;opacity:0;animation:lineReveal .8s ease both;background:linear-gradient(90deg,#ff6a1a,#ff9e2c,#ef2f66,#ff6a1a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:lineReveal .8s ease both, hueShift 6s linear infinite;}
  .legwork .l2{text-align:right;animation-delay:.18s, 0s;}
  @keyframes lineReveal{from{opacity:0;transform:translateY(40px);}to{opacity:1;transform:translateY(0);}}
  @keyframes hueShift{0%{background-position:0% 50%;}100%{background-position:200% 50%;}}

  /* ===== SPLIT SECTIONS ===== */
  .split-bg{background:var(--cream-2);}
  .split{padding:90px 0;display:grid;grid-template-columns:0.85fr 1fr;gap:64px;align-items:center;}
  .split.rev{grid-template-columns:1fr 0.85fr;}
  .split.rev .split-img{order:2;}
  .split-img{border-radius:24px;overflow:hidden;box-shadow:0 28px 60px -28px rgba(60,30,10,.4);}
  .split-img img{width:100%;height:560px;object-fit:cover;}
  .split h2{font-weight:800;font-size:42px;line-height:1.08;letter-spacing:-.02em;margin-bottom:22px;}
  .split p.lead{font-size:19px;line-height:1.6;color:var(--brown-text);margin-bottom:30px;max-width:520px;}
  .check-list{display:flex;flex-direction:column;gap:16px;margin-bottom:34px;}
  .check{display:flex;align-items:flex-start;gap:14px;font-size:17px;}
  .check .ck{color:var(--pink);font-weight:800;font-size:19px;}
  @media(max-width:900px){
    .split, .split.rev{grid-template-columns:1fr;padding:56px 0;gap:32px;}
    .split.rev .split-img{order:0;}
    .split-img img{height:320px;}
    .split h2{font-size:32px;}
  }

  /* ===== IMAGE BREAKER ===== */
  .breaker{position:relative;height:780px;overflow:hidden;}
  .breaker img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
  .breaker .scrim{position:absolute;inset:0;background:linear-gradient(180deg, rgba(20,12,6,.15) 0%, rgba(20,12,6,0) 32%, rgba(20,12,6,.2) 100%);}
  .breaker .pill-wrap{position:absolute;top:100px;left:8%;z-index:4;max-width:290px;}
  .breaker .center{position:absolute;left:0;right:0;top:52%;transform:translateY(-45%);display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 6%;}
  .breaker h2{font-weight:800;font-size:46px;line-height:1.06;letter-spacing:-.01em;color:#fff;text-transform:uppercase;margin-bottom:30px;}
  .breaker .btn{margin-bottom:40px;}
  .own-icons{display:flex;align-items:center;gap:52px;flex-wrap:wrap;justify-content:center;}
  .own-icons .oi{display:flex;align-items:center;gap:12px;color:#fff;}
  .own-icons .oi span{font-family:'Manrope',sans-serif;font-weight:700;font-size:16px;letter-spacing:.05em;}
  @media(max-width:768px){.breaker{height:640px;} .breaker h2{font-size:30px;} .breaker .pill-wrap{display:none;} .own-icons{gap:28px;}}

  /* ===== TESTIMONIALS ===== */
  .testi{padding:100px 0;}
  .testi-head{max-width:560px;margin-bottom:52px;}
  .testi-head h2{font-weight:800;font-size:42px;line-height:1.1;letter-spacing:-.02em;margin-bottom:14px;}
  .testi-head p{color:var(--brown-text);font-size:18px;}
  .testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .tcard{background:#fff;border-radius:20px;padding:32px;box-shadow:0 20px 40px -30px rgba(60,30,10,.35);border:1px solid var(--line);}
  .stars{color:var(--pink);font-size:16px;letter-spacing:2px;margin-bottom:16px;}
  .tcard p{font-size:16px;line-height:1.6;color:var(--ink-soft);margin-bottom:22px;}
  .who{display:flex;align-items:center;gap:12px;}
  .avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#ff9e2c,#ef2f66);flex:none;}
  .who .n{font-weight:700;font-size:15px;}
  .who .s{font-size:13px;color:var(--brown-text);}
  @media(max-width:900px){.testi-grid{grid-template-columns:1fr;}}

  /* ===== FAQ ===== */
  .faq{background:var(--cream-2);padding:100px 0;}
  .faq-head{max-width:560px;margin-bottom:44px;}
  .faq-head h2{font-weight:800;font-size:42px;letter-spacing:-.02em;}
  .faq-item{border-bottom:1px solid var(--line);padding:26px 0;}
  .faq-q{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-family:'Manrope',sans-serif;font-weight:700;font-size:18px;gap:20px;}
  .faq-q .plus{flex:none;width:28px;height:28px;border-radius:50%;background:var(--ink-soft);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;transition:transform .25s ease, background .25s ease;}
  .faq-item.open .faq-q .plus{transform:rotate(45deg);background:var(--pink);}
  .faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
  .faq-item.open .faq-a{max-height:200px;}
  .faq-a p{padding-top:16px;color:var(--brown-text);font-size:16px;line-height:1.6;max-width:760px;}

  /* ===== APP CTA ===== */
  .app-cta{max-width:1000px;margin:0 auto;padding:110px 56px;text-align:center;}
  .app-cta h2{font-weight:800;font-size:46px;line-height:1.06;letter-spacing:-.02em;margin-bottom:22px;}
  .app-cta p{font-size:20px;line-height:1.55;color:var(--brown-text);max-width:600px;margin:0 auto 36px;}
  .app-cta .row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

  /* ===== FOOTER ===== */
  footer{background:var(--ink-soft);color:rgba(255,255,255,.75);}
  .foot-grid{max-width:1200px;margin:0 auto;padding:64px 56px 40px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;}
  .foot-brand span{font-family:'Manrope',sans-serif;font-weight:800;font-size:23px;color:#fff;letter-spacing:-.02em;}
  .foot-brand p{font-size:15px;line-height:1.6;margin-top:16px;max-width:280px;}
  .foot-col-h{font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;color:#fff;margin-bottom:16px;}
  .foot-col{display:flex;flex-direction:column;gap:12px;font-size:15px;}
  .foot-col a:hover{color:var(--pink);}
  .foot-bottom{border-top:1px solid rgba(255,255,255,.12);padding:24px 56px;max-width:1200px;margin:0 auto;font-size:14px;}
  @media(max-width:768px){.foot-grid{grid-template-columns:1fr 1fr;padding:56px 22px 30px;} .foot-bottom{padding:20px 22px;}}

/* ===== NAV EXTRAS: auth links ===== */
.nav-only-mobile{display:none;}
@media(max-width:900px){.nav-only-mobile{display:block;}}
.nav-login{font-size:15px;font-weight:600;color:#fff;transition:color .2s ease;}
header.site-nav.solid .nav-login{color:var(--ink-soft);}
.nav-login:hover{color:var(--pink);}

/* ===== PRODUCT PAGE HERO ===== */
.page-hero{position:relative;height:60vh;min-height:440px;background:var(--ink);margin-top:0;}
.page-hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.page-hero .scrim{position:absolute;inset:0;background:linear-gradient(180deg, rgba(20,12,6,.35) 0%, rgba(20,12,6,.7) 100%);}
.page-hero .content{position:absolute;left:56px;right:56px;bottom:64px;z-index:3;max-width:680px;}
.page-hero .eyebrow{background:rgba(255,255,255,.14);color:#fff;}
.page-hero h1{font-weight:800;font-size:46px;line-height:1.06;color:#fff;letter-spacing:-.02em;margin-bottom:16px;}
.page-hero p{font-size:18px;line-height:1.55;color:rgba(255,255,255,.9);max-width:560px;margin-bottom:26px;}
.breadcrumb{position:absolute;top:110px;left:56px;z-index:3;font-size:14px;color:rgba(255,255,255,.7);}
.breadcrumb a:hover{color:#fff;}
@media(max-width:768px){
  .page-hero{height:auto;min-height:0;padding-top:120px;padding-bottom:56px;}
  .page-hero .content, .breadcrumb{position:static;left:auto;right:auto;bottom:auto;top:auto;padding:0 22px;max-width:none;}
  .page-hero h1{font-size:30px;}
}

/* ===== STEPS (how it works) ===== */
.steps{padding:100px 0;}
.steps-head{max-width:600px;margin-bottom:56px;}
.steps-head h2{font-weight:800;font-size:42px;letter-spacing:-.02em;margin-bottom:14px;}
.steps-head p{color:var(--brown-text);font-size:18px;}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.step{background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;}
.step .num{font-family:'Manrope',sans-serif;font-weight:800;font-size:15px;color:var(--pink);letter-spacing:.06em;margin-bottom:18px;}
.step h3{font-family:'Manrope',sans-serif;font-weight:700;font-size:20px;margin-bottom:12px;letter-spacing:-.01em;}
.step p{font-size:15.5px;line-height:1.6;color:var(--brown-text);}
@media(max-width:900px){.steps-grid{grid-template-columns:1fr;}}

/* ===== AUTH PAGES ===== */
.auth-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;}
.auth-visual{position:relative;background:var(--ink);overflow:hidden;}
.auth-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.auth-visual .scrim{position:absolute;inset:0;background:linear-gradient(200deg, rgba(20,12,6,.15) 10%, rgba(20,12,6,.75) 100%);}
.auth-visual .av-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:44px;}
.auth-visual .logo span{color:#fff;}
.auth-visual .quote{color:#fff;max-width:420px;}
.auth-visual .quote p{font-size:22px;line-height:1.4;font-weight:600;margin-bottom:14px;}
.auth-visual .quote span{font-size:14px;color:rgba(255,255,255,.75);}
.auth-form-side{display:flex;align-items:center;justify-content:center;padding:60px;}
.auth-card{width:100%;max-width:400px;}
.auth-card .back-home{font-size:14px;color:var(--brown-text);margin-bottom:28px;display:inline-block;}
.auth-card .back-home:hover{color:var(--pink);}
.auth-card h1{font-weight:800;font-size:30px;letter-spacing:-.02em;margin-bottom:8px;}
.auth-card .sub{color:var(--brown-text);font-size:15.5px;margin-bottom:32px;}
.field{margin-bottom:20px;}
.field label{display:block;font-size:14px;font-weight:700;margin-bottom:8px;}
.field input{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:13px 16px;font-size:15px;font-family:inherit;background:#fff;color:var(--ink-soft);transition:border-color .2s ease;}
.field input:focus{outline:none;border-color:var(--pink);}
.field-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;font-size:14px;}
.field-row a{color:var(--pink);font-weight:600;}
.check-row{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;color:var(--brown-text);margin-bottom:24px;}
.check-row input{margin-top:3px;}
.auth-submit{width:100%;justify-content:center;margin-bottom:20px;}
.auth-alt{text-align:center;font-size:15px;color:var(--brown-text);}
.auth-alt a{color:var(--pink);font-weight:700;}
.form-msg{font-size:14px;border-radius:10px;padding:12px 16px;margin-bottom:20px;display:none;}
.form-msg.show{display:block;}
.form-msg.error{background:#fde5ea;color:#b8103f;}
.form-msg.success{background:#e4f5ea;color:#1c7a44;}
.demo-note{margin-top:28px;font-size:12.5px;color:var(--brown-text);background:var(--cream-2);border-radius:10px;padding:12px 14px;line-height:1.5;}
@media(max-width:900px){
  .auth-wrap{grid-template-columns:1fr;}
  .auth-visual{display:none;}
  .auth-form-side{padding:40px 22px;}
}

/* ===== DASHBOARD ===== */
body.dash-body{background:var(--cream-2);}
.dash-topbar{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:14px 28px;}
.dash-topbar .logo span{color:var(--ink-soft);}
.dash-user{display:flex;align-items:center;gap:12px;}
.dash-user .avatar-sm{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#ff9e2c,#ef2f66);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;flex:none;}
.dash-user .u-meta{line-height:1.2;}
.dash-user .u-name{font-weight:700;font-size:14px;}
.dash-user .u-mail{font-size:12.5px;color:var(--brown-text);}
.dash-logout{font-size:14px;font-weight:600;color:var(--brown-text);border:1px solid var(--line);border-radius:10px;padding:9px 16px;background:#fff;cursor:pointer;}
.dash-logout:hover{color:var(--pink);border-color:var(--pink);}
.dash-menu-btn{display:none;border:none;background:var(--cream-2);width:40px;height:40px;border-radius:10px;cursor:pointer;}

.dash-shell{display:grid;grid-template-columns:250px 1fr;min-height:calc(100vh - 65px);}
.dash-side{background:#fff;border-right:1px solid var(--line);padding:26px 16px;}
.dash-side nav{display:flex;flex-direction:column;gap:4px;}
.dash-nav-link{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;font-size:15px;font-weight:600;color:var(--ink-soft);cursor:pointer;transition:background .15s ease;}
.dash-nav-link:hover{background:var(--cream-2);}
.dash-nav-link.active{background:var(--ink-soft);color:#fff;}
.dash-nav-link .ico{width:20px;height:20px;flex:none;display:flex;align-items:center;justify-content:center;}
.dash-main{padding:36px 40px;max-width:1100px;}
.dash-view{display:none;}
.dash-view.active{display:block;animation:fadeIn .25s ease both;}
@keyframes fadeIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}
.dash-h{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:28px;flex-wrap:wrap;gap:14px;}
.dash-h h1{font-weight:800;font-size:28px;letter-spacing:-.02em;}
.dash-h p{color:var(--brown-text);font-size:15px;margin-top:4px;}

.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:32px;}
.kpi{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;}
.kpi .k-label{font-size:13px;color:var(--brown-text);margin-bottom:10px;}
.kpi .k-val{font-family:'Manrope',sans-serif;font-weight:800;font-size:26px;letter-spacing:-.02em;}
.kpi .k-sub{font-size:12.5px;color:#1c9a52;margin-top:6px;font-weight:600;}
@media(max-width:1000px){.kpi-grid{grid-template-columns:repeat(2,1fr);}}

.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;margin-bottom:24px;}
.panel-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;}
.panel-h h2{font-family:'Manrope',sans-serif;font-weight:700;font-size:18px;letter-spacing:-.01em;}
.mini-btn{font-size:13.5px;font-weight:700;color:var(--pink);cursor:pointer;background:none;border:none;}

.notif-row{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);}
.notif-row:last-child{border-bottom:none;}
.notif-row .n-ico{flex:none;width:38px;height:38px;border-radius:10px;background:var(--pink);display:flex;align-items:center;justify-content:center;}
.notif-row .n-txt{font-size:14.5px;line-height:1.45;}
.notif-row .n-time{font-size:12.5px;color:var(--brown-text);margin-top:3px;}

.policy-card{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);gap:16px;flex-wrap:wrap;}
.policy-card:last-child{border-bottom:none;}
.policy-info{display:flex;align-items:center;gap:14px;}
.policy-ico{width:46px;height:46px;border-radius:12px;background:var(--cream-2);display:flex;align-items:center;justify-content:center;flex:none;}
.policy-name{font-weight:700;font-size:15.5px;}
.policy-meta{font-size:13px;color:var(--brown-text);margin-top:2px;}
.policy-actions{display:flex;align-items:center;gap:20px;}
.policy-price{font-weight:800;font-family:'Manrope',sans-serif;font-size:16px;}
.badge-pill{font-size:12px;font-weight:700;padding:5px 12px;border-radius:999px;}
.badge-pill.active{background:#e4f5ea;color:#1c7a44;}
.badge-pill.soon{background:#fdeee0;color:#b5651d;}
.remove-btn{font-size:13px;color:var(--brown-text);background:none;border:none;cursor:pointer;text-decoration:underline;}
.remove-btn:hover{color:#c0284f;}

.add-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end;margin-top:18px;}
.add-form .field{margin-bottom:0;}
.add-form select, .add-form input{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:10px 12px;font-size:14px;font-family:inherit;}
@media(max-width:800px){.add-form{grid-template-columns:1fr 1fr;}}

.score-wrap{display:flex;align-items:center;gap:36px;flex-wrap:wrap;}
.score-ring{position:relative;width:150px;height:150px;flex:none;}
.score-ring svg{transform:rotate(-90deg);}
.score-ring .val{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.score-ring .val b{font-family:'Manrope',sans-serif;font-size:32px;letter-spacing:-.02em;}
.score-ring .val span{font-size:12px;color:var(--brown-text);}
.score-bars{flex:1;min-width:220px;display:flex;align-items:flex-end;gap:10px;height:120px;}
.score-bars .bar{flex:1;background:linear-gradient(180deg,#ff9e2c,var(--pink));border-radius:6px 6px 0 0;position:relative;}
.score-bars .bar span{position:absolute;bottom:-22px;left:0;right:0;text-align:center;font-size:11px;color:var(--brown-text);}

.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line);}
.toggle-row:last-child{border-bottom:none;}
.toggle-row .t-label{font-weight:600;font-size:15px;}
.toggle-row .t-sub{font-size:13px;color:var(--brown-text);margin-top:2px;}
.switch{position:relative;width:46px;height:26px;flex:none;}
.switch input{opacity:0;width:0;height:0;}
.switch .slider{position:absolute;inset:0;background:#e4dcd2;border-radius:999px;cursor:pointer;transition:background .2s ease;}
.switch .slider:before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s ease;}
.switch input:checked + .slider{background:var(--pink);}
.switch input:checked + .slider:before{transform:translateX(20px);}

@media(max-width:900px){
  .dash-shell{grid-template-columns:1fr;}
  .dash-side{position:fixed;top:0;left:-100%;height:100vh;width:78%;max-width:300px;z-index:70;transition:left .3s ease;box-shadow:0 0 40px rgba(0,0,0,.2);}
  .dash-side.open{left:0;}
  .dash-menu-btn{display:block;}
  .dash-main{padding:26px 18px;}
  .add-form{grid-template-columns:1fr;}
}

/* ===== LANGUAGE SWITCHER ===== */
.lang-switch{position:relative;}
.lang-btn{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.14);color:#fff;border:none;border-radius:10px;padding:9px 13px;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit;transition:background .2s ease,color .2s ease;}
header.site-nav.solid .lang-btn{background:rgba(42,26,16,.08);color:var(--ink-soft);}
.dash-topbar .lang-btn{background:var(--cream-2);color:var(--ink-soft);}
.auth-visual .lang-btn{background:rgba(255,255,255,.14);color:#fff;}
.lang-btn:hover{background:var(--pink);color:#fff;}
.lang-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:12px;box-shadow:0 20px 40px -18px rgba(20,12,6,.35);border:1px solid var(--line);overflow:hidden;min-width:150px;display:none;z-index:80;}
.lang-menu.open{display:block;}
.lang-menu button{display:block;width:100%;text-align:left;background:none;border:none;padding:11px 16px;font-size:14px;font-family:inherit;color:var(--ink-soft);cursor:pointer;}
.lang-menu button:hover{background:var(--cream-2);}
.lang-menu button.active{color:var(--pink);font-weight:700;}
[dir="rtl"] .lang-menu{right:auto;left:0;}
[dir="rtl"] .lang-menu button{text-align:right;}
.nav-links .lang-switch{display:none;}
@media(max-width:900px){
  .nav-cta .lang-switch{display:none;}
  .nav-links .lang-switch{display:flex;margin-top:10px;}
  .nav-links .lang-menu{position:static;box-shadow:none;border:none;background:transparent;display:block;margin-top:8px;}
  .nav-links .lang-menu button{color:#fff;padding:8px 0;}
  .nav-links .lang-btn{background:rgba(255,255,255,.14);color:#fff;}
}

/* ===== RTL SUPPORT (Arabic) ===== */
[dir="rtl"]{text-align:right;}
[dir="rtl"] body{font-family:'Manrope','Plus Jakarta Sans',Tahoma,sans-serif;}
[dir="rtl"] .nav-links{gap:32px;}
[dir="rtl"] .nav-cta{flex-direction:row-reverse;}
[dir="rtl"] .badges{right:auto;left:40px;}
[dir="rtl"] .hero .copy, [dir="rtl"] .breadcrumb, [dir="rtl"] .page-hero .content{left:auto;right:56px;}
[dir="rtl"] .hero .pill-wrap{left:auto;right:15%;}
[dir="rtl"] .scroll-cue{left:auto;right:56px;}
[dir="rtl"] .check{flex-direction:row-reverse;justify-content:flex-end;}
[dir="rtl"] .split.rev{grid-template-columns:1fr 0.85fr;}
[dir="rtl"] .split.rev .split-img{order:0;}
[dir="rtl"] .split:not(.rev){grid-template-columns:1fr 0.85fr;}
[dir="rtl"] .split:not(.rev) .split-img{order:2;}
[dir="rtl"] .who{flex-direction:row-reverse;}
[dir="rtl"] .legwork .l2{text-align:left;}
[dir="rtl"] .faq-q{flex-direction:row-reverse;}
[dir="rtl"] .policy-info, [dir="rtl"] .notif-row, [dir="rtl"] .toggle-row, [dir="rtl"] .dash-nav-link, [dir="rtl"] .dash-user, [dir="rtl"] .who, [dir="rtl"] .badge, [dir="rtl"] .oi{flex-direction:row-reverse;}
[dir="rtl"] .policy-actions{flex-direction:row-reverse;}
[dir="rtl"] .check-row{flex-direction:row-reverse;}
[dir="rtl"] .field-row{flex-direction:row-reverse;}
[dir="rtl"] .dash-shell{direction:rtl;}
[dir="rtl"] .dash-side{border-right:none;border-left:1px solid var(--line);}
[dir="rtl"] .switch .slider:before{left:auto;right:3px;}
[dir="rtl"] .switch input:checked + .slider:before{transform:translateX(-20px);}
@media(max-width:900px){
  [dir="rtl"] .dash-side{left:auto;right:-100%;}
  [dir="rtl"] .dash-side.open{right:0;}
}

/* ===== DASHBOARD: Devis comparator ===== */
.quote-card{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--cream-2);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:10px;flex-wrap:wrap;transition:box-shadow .15s ease, transform .15s ease;}
.quote-card:hover{transform:translateY(-2px);}
.quote-card.best{border-color:var(--pink);background:#fff0f4;}
.quote-badge{font-family:'Manrope',sans-serif;font-size:11px;font-weight:800;letter-spacing:.04em;background:#fde5ea;color:var(--pink-dark);padding:4px 9px;border-radius:999px;display:inline-block;margin-bottom:4px;}
.quote-name{font-weight:700;font-size:15px;}
.quote-cover{font-size:12.5px;color:var(--brown-text);margin-top:2px;}
.quote-right{display:flex;align-items:center;gap:18px;}
.quote-price{text-align:right;}
.quote-price .amount{font-family:'Manrope',sans-serif;font-size:17px;font-weight:800;color:var(--ink-soft);}
.quote-price .per{font-size:11.5px;color:var(--brown-text);display:block;}
.sort-toggle{display:flex;gap:8px;}
.sort-toggle button{padding:7px 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;cursor:pointer;font-weight:700;font-size:13px;color:var(--brown-text);font-family:inherit;}
.sort-toggle button.active{background:var(--ink-soft);color:#fff;border-color:var(--ink-soft);}
.results-summary{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px;}
.results-summary .count{font-size:14.5px;color:var(--brown-text);}
.results-summary .count b{color:var(--ink-soft);}
.disclaimer-box{margin-top:18px;font-size:12.5px;color:var(--brown-text);background:var(--cream-2);border-radius:10px;padding:12px 14px;line-height:1.5;}

/* ===== DASHBOARD: Forensic verification ===== */
.dz{border:2px dashed var(--line);border-radius:18px;padding:44px 22px;text-align:center;cursor:pointer;transition:border-color .2s ease, background .2s ease;background:var(--cream-2);}
.dz:hover,.dz.dragover{border-color:var(--pink);background:#fff;}
.dz .dz-icon{font-size:30px;margin-bottom:12px;}
.dz h3{font-family:'Manrope',sans-serif;font-size:16px;margin-bottom:6px;}
.dz p{color:var(--brown-text);font-size:13.5px;}
.dz input[type=file]{display:none;}
.dz-preview{display:none;align-items:center;gap:14px;margin-top:18px;background:var(--cream-2);border-radius:12px;padding:12px 14px;}
.dz-preview.show{display:flex;}
.dz-preview img{width:56px;height:56px;object-fit:cover;border-radius:8px;}
.dz-preview .fname{font-size:13.5px;font-weight:600;flex:1;word-break:break-all;}
.dz-preview .fremove{cursor:pointer;color:var(--pink);font-weight:700;font-size:13px;background:none;border:none;}
.dz-actions{margin-top:20px;display:flex;justify-content:center;}
.dz-actions .btn[disabled]{opacity:.4;pointer-events:none;}
.verdict-tag{display:inline-flex;align-items:center;gap:8px;font-family:'Manrope',sans-serif;font-size:14px;font-weight:800;padding:8px 16px;border-radius:999px;}
.v-green{background:#e4f5ea;color:#1c7a44;}
.v-amber{background:#fdeee0;color:#b5651d;}
.v-red{background:#fbe1de;color:#b8103f;}
.verdict-hero{display:flex;align-items:center;gap:16px;padding:20px;border-radius:14px;margin-bottom:16px;flex-wrap:wrap;}
.verdict-hero .r-desc{font-size:13.5px;color:var(--brown-text);}
.demo-flag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#b5651d;background:#fdeee0;padding:6px 12px;border-radius:999px;margin-bottom:14px;}
.dz-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:dzspin .7s linear infinite;display:inline-block;}
@keyframes dzspin{to{transform:rotate(360deg);}}
