/* ── Jia Nest Landing Page ── */
/* Modern property management SaaS — professional, warm, trustworthy */
/* Palette: white #FFFFFF, soft bg #F8F6F3, accent teal #0D7377, dark #1A1A2E */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --jn-bg:#FFFFFF;
  --jn-bg-alt:#F8F6F3;
  --jn-ink:#1A1A2E;
  --jn-muted:#6B7280;
  --jn-accent:#0D7377;
  --jn-accent-light:#E8F4F4;
  --jn-accent-dark:#095E61;
  --jn-card:#FFFFFF;
  --jn-border:#E5E7EB;
  --jn-success:#059669;
  --jn-font-serif:'Playfair Display',Georgia,serif;
  --jn-font-sans:'Inter',system-ui,-apple-system,sans-serif;
}
html{scroll-behavior:smooth}
body{
  font-family:var(--jn-font-sans);
  background:var(--jn-bg);
  color:var(--jn-ink);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

/* ── Nav ── */
.jn-nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 32px;
  max-width:1148px;margin:0 auto;
}
.jn-logo{
  font-family:var(--jn-font-serif);
  font-size:24px;font-weight:700;
  color:var(--jn-ink);text-decoration:none;
}
.jn-logo em{font-style:italic;font-weight:400;color:var(--jn-accent)}
.jn-nav-links{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:500}
.jn-nav-links a{color:var(--jn-muted);text-decoration:none;transition:color 0.2s}
.jn-nav-links a:hover{color:var(--jn-ink)}
.jn-nav-cta{
  padding:8px 22px;border:1px solid var(--jn-accent);border-radius:50px;
  color:var(--jn-ink)!important;font-weight:600;
}
.jn-nav-cta:hover{
  background:var(--jn-accent);color:#fff!important;border-color:var(--jn-accent-dark);
}
@media(max-width:639px){
  .jn-nav{padding:16px 20px}
  .jn-nav-links{gap:16px;font-size:13px}
  .jn-nav-links a:not(.jn-nav-cta){display:none}
}

/* ── Badge ── */
.jn-badge{
  display:inline-flex;
  padding:6px 14px;
  background:var(--jn-accent-light);
  color:var(--jn-accent);
  font-size:13px;font-weight:600;
  border-radius:50px;
  margin-bottom:20px;
  letter-spacing:0.3px;
}

/* ── Hero ── */
.jn-hero{
  display:flex;align-items:center;justify-content:space-between;
  padding:40px 32px 80px;
  max-width:1148px;margin:0 auto;
  gap:60px;
}
.jn-hero-content{flex:1;max-width:540px}
.jn-hero h1{
  font-family:var(--jn-font-serif);
  font-size:52px;font-weight:700;
  line-height:1.15;letter-spacing:-1px;
  margin-bottom:16px;
}
.jn-accent{
  font-style:italic;
  color:var(--jn-accent);
  font-weight:400;
}
.jn-hero-sub{
  font-size:17px;color:var(--jn-muted);
  line-height:1.7;margin-bottom:32px;
}
.jn-hero-actions{display:flex;gap:14px;align-items:center}
@media(max-width:768px){
  .jn-hero{flex-direction:column;text-align:center;padding:32px 20px 60px;gap:40px}
  .jn-hero h1{font-size:36px}
  .jn-hero-actions{justify-content:center}
}
@media(max-width:639px){
  .jn-hero h1{font-size:30px}
  .jn-hero-actions{flex-direction:column;gap:10px}
}

/* ── Phone Mockup ── */
.jn-hero-visual{flex-shrink:0}
.jn-phone-mockup{
  width:280px;height:520px;
  perspective:800px;
}
.jn-phone-frame{
  width:100%;height:100%;
  background:#1C1C1E;
  border-radius:40px;
  padding:16px 12px;
  box-shadow:0 20px 60px rgba(0,0,0,0.15),0 0 0 1px rgba(255,255,255,0.1);
  position:relative;
}
.jn-chat-preview{
  background:#F2F2F7;
  border-radius:28px;
  height:100%;
  overflow:hidden;
  display:flex;flex-direction:column;
}
.jn-chat-header{
  display:flex;align-items:center;gap:6px;
  padding:14px 16px 10px;
  background:#FFF;
  border-bottom:1px solid #E5E5EA;
}
.jn-chat-dot{width:10px;height:10px;border-radius:50%}
.jn-chat-dot-red{background:#FF5F57}
.jn-chat-dot-yellow{background:#FEBC2E}
.jn-chat-dot-green{background:#28C840}
.jn-chat-title{
  margin-left:8px;font-size:13px;font-weight:600;color:#1C1C1E;
}
.jn-chat-body{
  flex:1;padding:12px 14px;
  display:flex;flex-direction:column;gap:12px;
  overflow-y:auto;
}
.jn-msg{max-width:88%}
.jn-msg-tenant{align-self:flex-end}
.jn-msg-ai{align-self:flex-start}
.jn-msg-label{
  font-size:10px;font-weight:600;color:var(--jn-accent);
  margin-bottom:4px;text-transform:uppercase;letter-spacing:0.5px;
}
.jn-msg-content{
  padding:10px 14px;border-radius:16px;
  font-size:12px;line-height:1.45;
}
.jn-msg-tenant .jn-msg-content{
  background:#007AFF;color:#fff;
  border-bottom-right-radius:4px;
}
.jn-msg-ai .jn-msg-content{
  background:#FFF;color:#1C1C1E;
  border:1px solid #E5E5EA;
  border-bottom-left-radius:4px;
}
.jn-msg-time{font-size:9px;color:#8E8E93;margin-top:3px;text-align:right}
@media(max-width:768px){
  .jn-phone-mockup{width:220px;height:400px}
}

/* ── Buttons ── */
.jn-btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:14px 32px;
  font-family:var(--jn-font-sans);
  font-size:15px;font-weight:600;
  border-radius:50px;
  text-decoration:none;
  transition:all 0.25s ease;
  cursor:pointer;
  border:none;
}
.jn-btn-primary{
  background:var(--jn-accent);color:#fff;
}
.jn-btn-primary:hover{background:var(--jn-accent-dark);transform:translateY(-1px)}
.jn-btn-ghost{
  background:transparent;color:var(--jn-ink);
  border:1px solid var(--jn-border);
}
.jn-btn-ghost:hover{border-color:var(--jn-accent);color:var(--jn-accent)}
.jn-btn-full{width:100%}

/* ── Section Shared ── */
.jn-section{
  padding:80px 32px;
  max-width:800px;margin:0 auto;
  text-align:center;
}
.jn-section-title{
  font-family:var(--jn-font-serif);
  font-size:34px;font-weight:700;
  letter-spacing:-0.5px;
  margin-bottom:16px;
}
.jn-section-body{
  font-size:17px;color:var(--jn-muted);
  line-height:1.8;max-width:620px;margin:0 auto;
}
.jn-body-wide{max-width:680px}
.jn-section-sub{
  font-size:17px;color:var(--jn-muted);
  margin-bottom:36px;
}
@media(max-width:639px){
  .jn-section{padding:60px 20px}
  .jn-section-title{font-size:26px}
}

/* ── Features ── */
.jn-features{max-width:960px}
.jn-features-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:20px;
  margin-top:8px;
}
.jn-feature-card-wide{grid-column:span 1}
.jn-feature-card{
  background:var(--jn-card);
  border:1px solid var(--jn-border);
  border-radius:16px;
  padding:32px 28px;
  text-align:left;
  transition:transform 0.2s,box-shadow 0.2s;
}
.jn-feature-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(13,115,119,0.06);border-color:var(--jn-accent-light)}
.jn-feature-icon{font-size:32px;margin-bottom:12px}
.jn-feature-card h3{
  font-size:20px;font-weight:600;
  margin-bottom:8px;
}
.jn-feature-card p{font-size:14px;color:var(--jn-muted);line-height:1.65}
.jn-feature-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.jn-tag{
  display:inline-flex;padding:3px 10px;
  background:var(--jn-accent-light);
  color:var(--jn-accent);
  font-size:11px;font-weight:500;
  border-radius:50px;
}
@media(max-width:768px){
  .jn-features-grid{grid-template-columns:1fr}
}

/* ── Comparison ── */
.jn-compare{max-width:800px}
.jn-compare-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:24px;
  margin-top:8px;text-align:left;
}
.jn-compare-col{
  padding:28px;border-radius:16px;
  border:1px solid var(--jn-border);
  background:var(--jn-bg-alt);
}
.jn-compare-col-good{
  background:var(--jn-accent-light);
  border-color:var(--jn-accent);
}
.jn-compare-label{
  font-size:18px;font-weight:600;margin-bottom:16px;
}
.jn-compare-list{list-style:none}
.jn-compare-list li{
  font-size:14px;padding:7px 0;
  color:var(--jn-muted);
}
.jn-compare-col-good .jn-compare-list li{color:var(--jn-ink)}
@media(max-width:639px){
  .jn-compare-grid{grid-template-columns:1fr}
}

/* ── Waitlist Form ── */
.jn-waitlist{max-width:520px}
.jn-form{text-align:left}
.jn-form-fields{display:flex;flex-direction:column;gap:12px}
.jn-form-row{display:flex;gap:12px}
.jn-form-row .jn-field{flex:1}
.jn-field{width:100%}
.jn-input{
  width:100%;
  padding:14px 18px;
  font-family:var(--jn-font-sans);font-size:15px;
  border:1px solid var(--jn-border);border-radius:12px;
  background:var(--jn-card);
  color:var(--jn-ink);
  outline:none;
  transition:border-color 0.2s;
}
.jn-input:focus{border-color:var(--jn-accent);box-shadow:0 0 0 3px var(--jn-accent-light)}
.jn-label{
  display:block;font-size:14px;font-weight:500;
  margin-bottom:10px;color:var(--jn-ink);
}
.jn-radio-group{
  display:flex;gap:8px;
}
.jn-radio{
  flex:1;display:flex;align-items:center;justify-content:center;
  padding:10px;border:1px solid var(--jn-border);border-radius:10px;
  font-size:14px;font-weight:500;cursor:pointer;
  transition:all 0.2s;
}
.jn-radio input{display:none}
.jn-radio:has(input:checked){
  background:var(--jn-accent-light);
  border-color:var(--jn-accent);
  color:var(--jn-accent);
}
.jn-radio:hover{border-color:var(--jn-accent)}
.jn-field-error{font-size:13px;color:#D1453B;margin-top:8px;text-align:center}
.jn-flash-success{
  background:#F0F7E6;color:var(--jn-success);
  padding:12px 20px;border-radius:12px;
  font-size:14px;margin-bottom:16px;text-align:center;
}

/* ── Footer ── */
.jn-footer{
  border-top:1px solid var(--jn-border);
  padding:48px 32px 32px;
}
.jn-footer-inner{max-width:800px;margin:0 auto;text-align:center}
.jn-footer-logo{
  font-family:var(--jn-font-serif);
  font-size:20px;font-weight:700;
}
.jn-footer-logo em{font-style:italic;font-weight:400;color:var(--jn-accent)}
.jn-footer-links{display:flex;gap:24px;justify-content:center;margin:20px 0}
.jn-footer-links a{font-size:14px;color:var(--jn-muted);text-decoration:none}
.jn-footer-links a:hover{color:var(--jn-ink)}
.jn-footer-copy{font-size:13px;color:var(--jn-muted)}
