/* Landing-only editorial theme. */
.hero-float-svg,.cta-sparkle-svg,.hero-photo-note{
  display:none!important
}

*{
  box-sizing:border-box;
  margin:0;
  padding:0
}

:root{
  --accent:#c35f36;
  --accent-light:#c35f36;
  --accent-dark:#a94727;
  --accent-glow:rgba(195,95,54,.15);
  --bg:#f8f5f1;
  --bg-card:#fffaf7;
  --text:#352d29;
  --text-secondary:#6d625c;
  --text-dim:#857970;
  --border:#e6ddd6;
  --green:#547d70;
  --gradient-1:linear-gradient(#c35f36,#c35f36);
  --gradient-2:linear-gradient(125deg,#d2774c,#b9532e)
}

html{
  scroll-behavior:smooth;
  scroll-padding-top:100px
}
body{
  font-family:Inter,Arial,sans-serif;
  background:var(--bg);
  color:var(--text);
  font-size:14px;
  -webkit-font-smoothing:antialiased
}
a{
  color:inherit
}
button,a{
  -webkit-tap-highlight-color:transparent
}
a:focus-visible,button:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:5px
}
img{
  display:block;
  max-width:100%
}
.container{
  max-width:1280px;
  margin:auto;
  padding:0 38px
}
.gradient-text{
  color:var(--accent)
}
h1,h2,.section-title,.stat-number,.step-number,.pricing-price .amount{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-weight:400
}
p{
  line-height:1.7
}
.reveal{
  opacity:1;
  transform:none
}
.glow-orb,.cursor-glow,#waveCanvas,.hero-particles,.floating-shape,.footer-glow,.cta-orb,.cta-grid,.cta-sparkle{
  display:none!important
}

.navbar{
  position:sticky;
  top:0;
  background:rgba(248,245,241,.95);
  backdrop-filter:blur(15px);
  z-index:100;
  border-bottom:1px solid transparent
}
.navbar.scrolled{
  border-color:var(--border)
}
.navbar-inner{
  max-width:1280px;
  margin:auto;
  padding:22px 38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px
}
.logo{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:27px;
  letter-spacing:1.4px;
  text-transform:uppercase;
  color:var(--accent);
  text-decoration:none;
  white-space:nowrap
}
.logo-icon,.footer-logo-icon{
  display:none
}
.nav-links{
  list-style:none;
  display:flex;
  align-items:center;
  gap:22px
}
.nav-links a{
  text-decoration:none;
  font-size:12px;
  white-space:nowrap
}
.nav-links a:hover{
  color:var(--accent)
}
.nav-login{
  padding:10px 20px;
  border:1px solid #d8cfc8;
  border-radius:100px
}
.nav-cta{
  background:var(--gradient-2);
  color:white!important;
  padding:11px 18px;
  border-radius:7px
}
.mobile-menu-btn{
  display:none;
  background:none;
  border:1px solid var(--border);
  border-radius:50%;
  width:42px;
  height:42px;
  cursor:pointer
}
.menu-icon{
  width:17px;
  height:14px;
  display:block;
  margin:auto;
  position:relative
}
.menu-icon span{
  position:absolute;
  left:0;
  width:100%;
  height:1px;
  background:var(--text)
}
.menu-icon span:nth-child(1){
  top:0
}
.menu-icon span:nth-child(2){
  top:6px
}
.menu-icon span:nth-child(3){
  top:12px
}
.mobile-menu-overlay{
  display:none
}
.mobile-menu-overlay.active{
  display:block;
  position:fixed;
  inset:85px 0 0;
  background:var(--bg);
  z-index:99;
  padding:30px;
  overflow:auto
}
.mobile-nav{
  list-style:none;
  display:grid;
  gap:24px
}
.mobile-nav a{
  font-size:22px;
  text-decoration:none
}
.menu-open{
  overflow:hidden
}

.hero{
  padding:14px 0 30px
}
.hero-grid{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:38px;
  align-items:center
}
.hero-badge{
  font-size:11px;
  color:var(--accent);
  letter-spacing:1.2px;
  text-transform:uppercase;
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:25px
}
.hero-badge-dot{
  width:6px;
  height:6px;
  background:var(--accent);
  border-radius:50%;
  display:inline-block
}
.hero h1{
  font-size:clamp(44px,5.3vw,76px);
  line-height:1.02;
  letter-spacing:-2.4px;
  max-width:490px
}
.hero-desc{
  font-size:15px;
  line-height:1.7;
  margin:25px 0 30px;
  max-width:410px;
  color:var(--text-secondary)
}
.hero-buttons{
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap
}
.btn-primary,.btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  padding:15px 24px;
  border-radius:8px;
  text-decoration:none;
  font-size:13px;
  font-weight:500;
  min-height:48px;
  transition:background .2s,box-shadow .2s
}
.btn-primary{
  color:white;
  background:var(--gradient-2);
  box-shadow:0 5px 12px var(--accent-glow)
}
.btn-primary:hover{
  box-shadow:0 7px 18px rgba(195,95,54,.25)
}
.btn-secondary{
  border:1px solid #dacfc6
}
.btn-secondary:hover{
  background:#eee6df
}
.hero-right{
  position:relative;
  min-height:540px;
  border-radius:20px;
  background:#e4d8cd;
  overflow:hidden
}
.hero-portrait{
  width:100%;
  height:540px;
  object-fit:cover;
  object-position:42% center
}
.scan-frame{
  position:absolute;
  inset:55px 32% 65px 12%;
  border:1px solid rgba(255,255,255,.7);
  border-radius:26px;
  pointer-events:none
}
.scan-circle{
  position:absolute;
  width:92px;
  height:92px;
  border:1px dashed rgba(255,255,255,.8);
  border-radius:50%;
  top:43%;
  left:32%
}
.scan-line{
  position:absolute;
  top:63%;
  left:0;
  width:100%;
  height:1px;
  background:#fff5e9;
  box-shadow:0 0 18px 3px #f5ddc1
}
.hero-status{
  position:absolute;
  top:20px;
  left:20px;
  padding:9px 13px;
  border-radius:30px;
  background:rgba(255,255,255,.8);
  font-size:11px;
  display:flex;
  gap:7px;
  align-items:center
}
.hero-status .phone-header-avatar{
  font-family:Georgia,serif;
  font-size:15px;
  color:var(--accent)
}
.hero-result{
  position:absolute;
  right:18px;
  bottom:24px;
  width:235px;
  padding:22px;
  border:1px solid rgba(255,255,255,.8);
  border-radius:12px;
  background:rgba(255,252,249,.92);
  box-shadow:0 8px 30px #49392c16;
  backdrop-filter:blur(12px)
}
.chat-result-title{
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color:var(--accent);
  margin-bottom:16px
}
.chat-result-row{
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:11px;
  padding:10px 0;
  border-bottom:1px solid var(--border)
}
.chat-result-row .label{
  color:var(--text-secondary)
}
.chat-result-row .value{
  font-weight:500
}
.chat-result-bar{
  height:3px;
  background:#e7ded6;
  margin-top:18px
}
.chat-result-bar-fill{
  height:100%;
  width:62%;
  background:var(--accent)
}
.hero-chat-notes{
  position:absolute;
  left:18px;
  bottom:26px;
  width:160px;
  display:grid;
  gap:6px
}
.hero-chat-notes p{
  font-size:10px;
  background:rgba(255,252,249,.85);
  padding:8px 11px;
  border-radius:6px;
  line-height:1.4
}
.hero-photo-note{
  position:absolute;
  left:18px;
  top:74px;
  font-size:28px
}
.marquee-section{
  padding:15px 0;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  overflow:hidden
}
.marquee-track{
  display:flex;
  gap:35px;
  width:max-content;
  animation:marquee 70s linear infinite
}
.marquee-item{
  font-size:10px;
  letter-spacing:.7px;
  color:var(--text-dim);
  display:flex;
  align-items:center;
  gap:12px;
  white-space:nowrap
}
.marquee-item svg{
  width:13px;
  color:var(--accent)
}
@keyframes marquee{
  to{
  transform:translateX(-50%)
}

}

.stats-bar{
  padding:27px 0
}
.stats-bar-inner{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  text-align:center
}
.stat-item{
  border-right:1px solid var(--border)
}
.stat-item:last-child{
  border:0
}
.stat-number{
  font-size:43px;
  line-height:1.1;
  color:var(--accent)
}
.stat-label{
  font-size:11px;
  color:var(--text-secondary);
  margin-top:7px
}
.section{
  padding:65px 0;
  position:relative
}
.section-label{
  font-size:10px;
  letter-spacing:1.7px;
  text-transform:uppercase;
  color:var(--accent);
  margin-bottom:14px;
  display:flex
}
.section-title{
  font-size:clamp(36px,4vw,54px);
  line-height:1.07;
  letter-spacing:-1px;
  margin-bottom:16px
}
.section-subtitle{
  font-size:14px;
  color:var(--text-secondary);
  max-width:550px;
  line-height:1.7
}
.bento-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:15px;
  margin-top:34px
}
.bento-card{
  border:1px solid var(--border);
  background:rgba(255,255,255,.58);
  border-radius:15px;
  padding:26px;
  position:relative;
  overflow:hidden
}
.bento-wide{
  grid-column:span 2
}
.bento-icon{
  background:#f1e7de!important;
  border:0!important;
  border-radius:50%;
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:20px
}
.bento-icon svg [stroke]{
  stroke:var(--accent)
}
.bento-icon svg [fill]:not([fill="none"]){
  fill:var(--accent)
}
.bento-card h3{
  font-size:16px;
  font-weight:500;
  margin-bottom:10px
}
.bento-card p{
  font-size:12px;
  color:var(--text-secondary)
}
.bento-visual{
  margin-top:23px;
  min-height:60px
}
.bento-card:first-child{
  min-height:310px;
  padding-right:43%;
  background:linear-gradient(90deg,#fffaf7 30%,transparent 75%),url('/landing/portrait-reference.webp') center/cover
}
.bento-card:first-child .bento-visual{
  display:none
}
.bento-ticker-item{
  padding:7px 0;
  border-bottom:1px solid var(--border);
  font-size:10px
}
.bento-ticker-item:nth-child(n+5){
  display:none
}
.bento-calendar{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:4px
}
.cal-day{
  padding:7px 2px;
  font-size:9px;
  text-align:center;
  border-radius:4px;
  background:#efe7e0
}
.cal-day.done{
  background:#e1e9e2;
  color:#547d70
}
.cal-day.today{
  background:var(--accent);
  color:white
}
.bento-graph{
  height:85px;
  display:flex;
  align-items:end;
  gap:7px
}
.bento-bar{
  flex:1;
  background:linear-gradient(#d7a88a,#ecdcd0);
  border-radius:4px 4px 0 0
}

#how{
  padding:35px 0;
  background:none!important
}
#how>.container{
  border:1px solid var(--border);
  border-radius:18px;
  padding:35px;
  background:#fffaf780;
  max-width:1204px
}
.steps-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:55px;
  margin-top:32px
}
.step-card{
  position:relative
}
.step-number{
  font-size:33px;
  color:var(--accent);
  margin-bottom:12px
}
.step-visual{
  height:215px;
  border-radius:12px;
  margin-bottom:18px;
  background:#eee6df;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  position:relative
}
.step-visual-1,.step-visual-2{
  background:url('/landing/portrait-reference.webp') 32% center/cover
}
.step-visual-1 svg,.step-visual-2 svg{
  display:none
}
.step-visual-1:after{
  content:'';
  position:absolute;
  bottom:13px;
  border:2px solid white;
  outline:1px solid white;
  outline-offset:4px;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#ffffff77
}
.step-visual-2:after{
  content:'';
  position:absolute;
  inset:20px 26%;
  border:1px dashed #fff;
  border-radius:45%
}
.step-visual-3 svg{
  width:95%;
  height:85%;
  filter:sepia(.8) saturate(.55)
}
.step-card h3{
  font-size:15px;
  font-weight:500;
  margin-bottom:8px
}
.step-card p{
  font-size:12px;
  color:var(--text-secondary)
}
.step-connector{
  position:absolute;
  top:140px;
  right:-35px;
  color:var(--accent);
  font-size:22px
}
.sv-calendar{
  display:none
}

#blog{
  padding:65px 0!important
}
#blog>.container>div[style*="display:grid"]{
  gap:18px!important
}
#blog a.bento-card{
  padding:28px;
  display:flex!important;
  flex-direction:column;
  background:#fffaf7;
  min-height:240px;
  transition:box-shadow .2s
}
#blog a.bento-card:hover{
  box-shadow:0 12px 30px #5b3d2510
}
#blog a.bento-card span{
  color:var(--accent)!important;
  font-size:11px!important;
  font-weight:500!important
}
#blog a.bento-card h3{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:29px!important;
  font-weight:500;
  line-height:1.1!important
}
#blog a.bento-card p{
  margin-bottom:20px;
  font-size:12px!important
}
#blog a.bento-card span:last-child{
  margin-top:auto
}

.pricing-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
  max-width:850px;
  margin:35px auto 0
}
.pricing-card{
  padding:36px;
  border-radius:16px;
  border:1px solid var(--border);
  background:#fffaf7;
  position:relative
}
.pricing-card.popular{
  border-color:#c78666;
  background:#f1e6dc
}
.pricing-badge{
  position:absolute;
  top:-13px;
  right:24px;
  border-radius:30px;
  padding:6px 15px;
  background:var(--accent);
  color:white;
  font-size:10px
}
.pricing-card h3{
  font-size:19px;
  font-weight:500;
  margin-bottom:8px
}
.pricing-price{
  margin-bottom:20px
}
.pricing-price .amount{
  font-size:56px
}
.pricing-price .period{
  font-size:13px;
  color:var(--text-dim)
}
.pricing-features{
  list-style:none;
  margin-bottom:25px
}
.pricing-features li{
  font-size:12px;
  color:var(--text-secondary);
  line-height:1.6;
  display:flex;
  gap:9px;
  padding:10px 0;
  border-bottom:1px solid var(--border)
}
.pricing-check{
  color:var(--accent)
}
.btn-pricing{
  display:flex;
  justify-content:center;
  padding:14px;
  border:1px solid #d6c8bd;
  border-radius:7px;
  text-decoration:none;
  font-size:13px
}
.popular .btn-pricing{
  background:var(--gradient-2);
  color:white;
  border:0
}
.pricing-note{
  text-align:center;
  font-size:11px;
  color:var(--text-dim);
  margin-top:22px
}
#reviews{
  background:none!important
}
.trust-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:32px
}
.trust-card{
  padding:28px;
  border-top:1px solid var(--border)
}
.stars{
  font-size:12px;
  letter-spacing:4px;
  color:var(--accent);
  margin-bottom:16px
}
.quote{
  font-size:13px;
  color:var(--text-secondary);
  line-height:1.8;
  margin-bottom:22px
}
.author{
  display:flex;
  align-items:center;
  gap:12px
}
.author-avatar{
  width:38px;
  height:38px;
  background:#eaddd0;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:11px
}
.author-name{
  font-size:12px
}
.author-info{
  font-size:10px;
  margin-top:5px;
  color:var(--text-dim)
}

.cta-section{
  margin:20px auto 50px;
  padding:50px 0;
  border:1px solid var(--border);
  border-radius:18px;
  max-width:1204px;
  background:linear-gradient(90deg,#efe4da 35%,#f5eee6d9 65%,#f5eee633),url('/landing/portrait-reference.webp') right 40%/cover;
  position:relative;
  overflow:hidden
}
.cta-section .container{
  position:relative;
  max-width:900px;
  margin:0
}
.cta-section h2{
  font-size:55px;
  line-height:1.05;
  margin-bottom:20px;
  max-width:630px
}
.cta-sub{
  font-size:14px;
  color:var(--text-secondary)
}
.cta-urgency{
  font-size:11px;
  margin:12px 0 22px;
  display:flex;
  align-items:center;
  gap:8px
}
.cta-section .btn-primary{
  font-size:13px!important;
  padding:15px 25px!important
}
.footer{
  padding:35px 0 22px;
  border-top:1px solid var(--border)
}
.footer-grid{
  display:grid;
  grid-template-columns:1.6fr 1fr 1.1fr 1.1fr 1.2fr;
  gap:25px
}
.footer-logo{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:24px;
  color:var(--accent);
  text-transform:uppercase;
  margin-bottom:12px
}
.footer-brand p{
  font-size:11px;
  color:var(--text-secondary)
}
.footer-col h4{
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:1px;
  margin-bottom:15px;
  font-weight:500
}
.footer-nav-links{
  list-style:none;
  display:grid;
  gap:12px
}
.footer-nav-links a{
  font-size:10px;
  text-decoration:none;
  color:var(--text-secondary)
}
.footer-social{
  display:flex;
  gap:8px;
  margin-top:16px
}
.footer-social-link{
  width:30px;
  height:30px;
  border:1px solid var(--border);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--text-secondary)
}
.footer-tg-btn{
  font-size:11px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:15px;
  text-decoration:none;
  color:var(--accent)
}
.footer-contact-item{
  display:flex;
  gap:7px;
  font-size:10px;
  color:var(--text-secondary);
  line-height:1.6;
  margin-bottom:12px
}
.footer-contact-item a{
  text-decoration:none
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  margin-top:35px;
  padding:20px 0;
  border-top:1px solid var(--border);
  font-size:10px;
  color:var(--text-dim)
}
.footer-bottom-links{
  display:flex;
  gap:20px;
  list-style:none
}
.footer-bottom-links a{
  text-decoration:none
}
.footer-legal{
  font-size:9px;
  color:var(--text-dim);
  display:flex;
  gap:16px;
  flex-wrap:wrap
}

@media(min-width:1000px){
  #features .bento-card:last-child{
  grid-column:span 2
}

}

@media(max-width:1100px){
  .nav-links{
  gap:14px
}
.nav-links a{
  font-size:10px
}
.nav-links li:last-child{
  display:none
}
.hero-grid{
  gap:24px
}
.hero-result{
  width:210px;
  padding:16px
}
.hero-chat-notes{
  width:125px
}
.bento-grid{
  grid-template-columns:repeat(3,1fr)
}
.footer-grid{
  grid-template-columns:2fr 1fr 1fr
}
.footer-col:last-child{
  grid-column:span 2
}

}

@media(max-width:800px){
  .container{
  padding:0 22px
}
.navbar-inner{
  padding:18px 22px
}
.logo{
  font-size:24px
}
.nav-links{
  display:none
}
.mobile-menu-btn{
  display:block
}
.hero-grid{
  grid-template-columns:1fr
}
.hero{
  padding-top:24px
}
.hero h1{
  font-size:62px;
  max-width:600px
}
.hero-desc{
  max-width:540px
}
.hero-right{
  min-height:460px
}
.hero-portrait{
  height:460px
}
.hero-result{
  width:235px
}
.hero-chat-notes{
  width:170px
}
.stats-bar-inner{
  gap:10px
}
.stat-number{
  font-size:34px
}
.stat-label{
  font-size:9px
}
.bento-grid{
  grid-template-columns:repeat(2,1fr)
}
.bento-card{
  padding:22px
}
.steps-row{
  gap:20px
}
.step-visual{
  height:170px
}
.step-connector{
  display:none!important
}
#how>.container{
  margin:0 16px;
  padding:26px
}
.section{
  padding:45px 0
}
.trust-grid{
  grid-template-columns:1fr
}
.trust-card{
  padding:23px 0
}
.cta-section{
  margin:20px 16px 40px
}
.cta-section h2{
  font-size:46px
}
.footer-grid{
  grid-template-columns:repeat(2,1fr)
}
.footer-brand{
  grid-column:span 2
}
.footer-col:last-child{
  grid-column:auto
}
#blog>.container>div[style*="display:grid"]{
  grid-template-columns:1fr!important
}

}

@media(max-width:480px){
  .hero h1{
  font-size:52px;
  letter-spacing:-1.5px
}
.hero-badge{
  font-size:9px;
  margin-bottom:19px
}
.hero-desc{
  font-size:13px;
  margin:22px 0
}
.hero-right{
  min-height:400px
}
.hero-portrait{
  height:400px;
  object-position:35% center
}
.hero-result{
  right:12px;
  bottom:16px;
  width:190px;
  padding:14px
}
.hero-chat-notes{
  left:12px;
  width:115px;
  bottom:16px
}
.hero-chat-notes p{
  font-size:8px;
  padding:7px
}
.scan-frame{
  inset:55px 25% 65px 10%
}
.hero-buttons .btn-primary,.hero-buttons .btn-secondary{
  padding:13px 19px;
  font-size:12px
}
.stats-bar-inner{
  grid-template-columns:repeat(2,1fr);
  row-gap:25px
}
.stat-item:nth-child(2){
  border:0
}
.bento-grid,.pricing-grid,.steps-row{
  grid-template-columns:1fr
}
.bento-wide{
  grid-column:auto
}
.bento-card:first-child{
  padding-right:43%;
  min-height:270px
}
.step-visual{
  height:235px
}
.steps-row{
  gap:30px
}
.section-title{
  font-size:40px
}
.pricing-card{
  padding:28px
}
.cta-section h2{
  font-size:40px
}
.cta-section{
  background:linear-gradient(#eee2d9e8,#eee2d9e8),url('/landing/portrait-reference.webp') center/cover
}
.footer-bottom{
  gap:12px;
  flex-wrap:wrap
}
.footer-legal{
  gap:10px
}
.footer-grid{
  gap:30px 15px
}

}

@media(prefers-reduced-motion:reduce){
  html{
  scroll-behavior:auto
}
*,*:before,*:after{
  animation:none!important;
  transition:none!important
}

}

.author-avatar{
  background:#eaddd0!important;
  color:#a94727!important
}


.step-visual-3 svg [stroke]{
  stroke:#a97759
}
.step-visual-3 svg [opacity]{
  opacity:.7
}
.bento-card:first-child{
  background-image:linear-gradient(90deg,#fffaf7 25%,#fffaf7e8 45%,transparent 85%),url("/landing/portrait-reference.webp")
}
