@font-face {
  font-family:SCDream;
  src:url('fonts/SCDream3.woff2') format('woff2');
  font-weight:300;
  font-display:swap
}
@font-face {
  font-family:SCDream;
  src:url('fonts/SCDream4.woff2') format('woff2');
  font-weight:400;
  font-display:swap
}
@font-face {
  font-family:SCDream;
  src:url('fonts/SCDream5.woff2') format('woff2');
  font-weight:500;
  font-display:swap
}
@font-face {
  font-family:SCDream;
  src:url('fonts/SCDream6.woff2') format('woff2');
  font-weight:700;
  font-display:swap
}
@font-face {
  font-family:SCDream;
  src:url('fonts/SCDream8.woff2') format('woff2');
  font-weight:800;
  font-display:swap
}
:root {
  --ink:#071c35;
  --navy:#062849;
  --navy-2:#093b68;
  --blue:#0b6fbd;
  --cyan:#67d9ff;
  --cyan-soft:#dff7ff;
  --white:#fff;
  --paper:#f7f9fc;
  --muted:#333;
  --line:#dce4ed;
  --radius:24px;
  --shadow:0 24px 70px rgba(2,24,49,.16)
}
* {
  box-sizing:border-box
}

.crm-wrap input[type=text], .crm-wrap input[type=tel], .crm-wrap select {      width: 214px !important; }

html {
  scroll-behavior:smooth
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:SCDream,-apple-system,'Malgun Gothic',sans-serif;
  line-height:1.65;
  -webkit-font-smoothing:antialiased
}
a {
  color:inherit;
  text-decoration:none
}
button,input {
  font:inherit
}
.shell {
  width:min(1180px,calc(100% - 48px));
  margin-inline:auto
}
.kicker {
  margin:0 0 20px;
  color:var(--blue);
  font-size:13px;
  font-weight:800;
  letter-spacing:.12em
}
.kicker.light {
  color:var(--cyan)
}
.site-header {
  position:absolute;
  z-index:20;
  width:100%;
  border-bottom:1px solid rgba(255,255,255,.2);
  color:#fff
}
.header-inner {
  height:84px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px
}
.brand {
  display:flex;
  align-items:center;
  line-height:1
}
.brand-logo {
  display:block;
  width:auto;
  height:70px
}
.site-header nav {
  display:flex;
  gap:34px;
  font-size:15px;
  font-weight:700
}
.site-header nav a {
  opacity:.8
}
.site-header nav a:hover {
  opacity:1
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:13px 27px;
  border-radius:999px;
  font-size:15px;
  font-weight:800;
  transition:transform .2s,box-shadow .2s
}
.button:hover {
  transform:translateY(-2px)
}
.button-accent {
  background:var(--cyan);
  color:var(--ink);
  box-shadow:0 12px 30px rgba(103,217,255,.2)
}
.header-button {
  min-height:46px;
  padding:11px 23px
}
.dark-grid {
  position:relative;
  overflow:hidden;
  color:#fff;
  background-color:var(--navy);
  background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:72px 72px
}
.dark-grid:after {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 70% 20%,rgba(35,133,197,.22),transparent 35%),radial-gradient(circle at 10% 85%,rgba(1,109,173,.18),transparent 32%)
}
.spark {
  position:absolute;
  z-index:2;
  color:var(--cyan);
  font-size:35px;
  opacity:.8
}
.spark-one {
  top:145px;
  left:8%
}
.spark-two {
  right:8%;
  top:135px;
  color:#fff;
  font-size:22px
}
.spark-three {
  top:60px;
  right:10%
}
.hero {
  min-height:760px;
  padding:160px 0 80px
}
.hero-grid {
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:1.06fr .94fr;
  gap:78px;
  align-items:center
}
.hero-copy h1 {
  font-size:clamp(50px,5.5vw,78px);
  line-height:1.12;
  letter-spacing:-.045em;
  margin:0;
  font-weight:800
}
.hero-copy h1 em {
  font-style:normal;
  color:var(--cyan)
}
.hero-lead {
  max-width:610px;
  margin:28px 0 0;
  color:#c6d8e8;
  font-size:17px
}
.hero-actions {
  display:flex;
  align-items:center;
  gap:28px;
  margin-top:36px
}
.text-link {
  font-size:15px;
  font-weight:700;
  color:#d8e8f6
}
.text-link span {
  color:var(--cyan);
  margin-left:5px
}
.hero-proof {
  display:flex;
  gap:22px;
  margin-top:38px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.14);
  font-size:12px;
  color:#b7ccdf
}
.hero-art {
  position:relative;
  isolation:isolate;
  margin:0;
  min-height:560px;
  display:flex;
  align-items:center;
  justify-content:center
}
.hero-art-glow {
  position:absolute;
  z-index:-1;
  width:82%;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(103,217,255,.28),rgba(19,115,177,.12) 48%,transparent 72%);
  filter:blur(10px)
}
.hero-art img {
  display:block;
  width:min(100%,590px);
  height:auto;
  /* clip-path:polygon(49.5% 0,98.3% 39.2%,80.7% 100%,16.4% 100%,0 39.2%); */
  filter:drop-shadow(0 34px 42px rgba(0,11,29,.4))
}
.hero-art:after {
  content:"";
  position:absolute;
  z-index:-1;
  inset:5% 1% 3%;
  clip-path:polygon(49.5% 0,98.3% 39.2%,80.7% 100%,16.4% 100%,0 39.2%);
  border:1px solid rgba(103,217,255,.28);
  background:linear-gradient(145deg,rgba(103,217,255,.1),transparent 45%)
}
.hero-art-caption {
  position:absolute;
  z-index:3;
  left:8%;
  bottom:9%;
  display:flex;
  flex-direction:column;
  gap:2px;
  max-width:260px;
  padding:12px 17px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  background:rgba(4,26,49,.82);
  box-shadow:0 14px 32px rgba(0,12,28,.24);
  backdrop-filter:blur(12px)
}
.hero-art-caption span {
  color:var(--cyan);
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em
}
.hero-art-caption strong {
  color:#fff;
  font-size:12px;
  line-height:1.45
}
.features {
  padding:115px 0 105px;
  background:#fff
}
.feature-intro {
  display:grid;
  grid-template-columns:1fr minmax(260px,.82fr) 1fr;
  gap:48px;
  align-items:center
}
.feature-intro h2,.section-heading h2,.apply-copy h2 {
  margin:0;
  font-size:clamp(34px,4vw,52px);
  line-height:1.2;
  letter-spacing:-.035em;
  font-weight:800
}
.feature-summary {
  margin:0;
  color:var(--muted);
  font-size:16px
}
.feature-person {
  position:relative;
  align-self:end;
  margin:-70px 0 -12px;
  min-height:480px;
  display:flex;
  align-items:flex-end;
  justify-content:center
}
.feature-person:after {
  content:"";
  position:absolute;
  z-index:3;
  left:8%;
  right:8%;
  bottom:0;
  height:20px;
  background:radial-gradient(ellipse,rgba(6,40,73,.22),transparent 68%);
  filter:blur(5px)
}
.person-glow {
  position:absolute;
  z-index:0;
  width:330px;
  height:330px;
  bottom:35px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(103,217,255,.3),rgba(223,247,255,.42) 48%,transparent 72%)
}
.feature-person img {
  position:relative;
  z-index:2;
  display:block;
  width:auto;
  max-width:100%;
  height:500px;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 20px 24px rgba(7,28,53,.14))
}
.feature-grid {
  position:relative;
  z-index:4;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  margin-top:-28px;
  padding:58px 38px 42px;
  border-radius:26px;
  background:linear-gradient(135deg,var(--navy),#0a365f);
  box-shadow:0 28px 65px rgba(7,28,53,.18);
  overflow:hidden
}
.feature-grid:before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:48px 48px
}
.feature-item {
  position:relative;
  z-index:1;
  padding:8px 30px 4px
}
.feature-item+.feature-item {
  border-left:1px solid rgba(255,255,255,.12)
}
.icon-badge {
  display:grid;
  place-items:center;
  width:53px;
  height:53px;
  border-radius:17px;
  background:rgba(103,217,255,.14);
  color:var(--cyan);
  border:1px solid rgba(103,217,255,.18)
}
.icon-badge svg {
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round
}
.item-number {
  position:absolute;
  right:30px;
  top:9px;
  margin:0;
  color:rgba(170,215,241,.5);
  font-size:12px;
  font-weight:800
}
.feature-item h3 {
  font-size:21px;
  margin:27px 0 12px;
  color:#fff
}
.feature-item>p:last-child {
  margin:0;
  color:#afc4d7;
  font-size:15px
}
.reviews {
  padding:100px 0;
  background:var(--paper)
}
.section-heading {
  text-align:center
}
.section-heading h2 {
  font-size:42px
}
.review-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-top:72px
}
.review-grid blockquote {
  position:relative;
  margin:0;
  padding:44px 30px 30px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff
}
.review-avatar {
  position:absolute;
  top:-34px;
  left:28px;
  width:68px;
  height:68px;
  display:block;
  border:4px solid var(--paper);
  border-radius:50%;
  object-fit:cover;
  box-shadow:0 8px 20px rgba(7,28,53,.14)
}
.stars {
  color:#11a6df;
  letter-spacing:3px
}
.review-grid blockquote p {
  min-height:76px;
  color:#38485b;
  font-size:15px;
  font-weight:700
}
.review-grid footer {
  color:var(--muted);
  font-size:12px;
  font-weight:700
}
.cta {
  padding:100px 0
}
.cta-grid {
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:70px;
  align-items:center
}
.cta-copy h2 {
  font-size:clamp(40px,5vw,60px);
  line-height:1.18;
  margin:0;
  font-weight:800
}
.cta-copy>p:not(.kicker) {
  max-width:540px;
  color:#bfd2e4;
  margin:24px 0 32px
}
.card-visual {
  position:relative;
  min-height:410px
}
.money-card {
  position:absolute;
  left:50%;
  top:50%;
  width:360px;
  height:220px;
  padding:30px;
  border-radius:24px;
  background:linear-gradient(135deg,#e4f8ff,#a9e8ff);
  color:var(--navy);
  box-shadow:0 30px 60px rgba(0,8,26,.28);
  display:flex;
  flex-direction:column
}
.money-card span {
  font-size:10px;
  font-weight:800;
  letter-spacing:.11em
}
.money-card strong {
  margin:auto 0;
  font-size:34px
}
.money-card small {
  font-size:9px;
  letter-spacing:.12em
}
.money-card b {
  position:absolute;
  right:28px;
  bottom:24px;
  font-size:25px
}
.card-back {
  transform:translate(-65%,-50%) rotate(-20deg);
  background:linear-gradient(135deg,#fff,#c4d9ee);
  opacity:.85
}
.card-mid {
  transform:translate(-46%,-50%) rotate(-5deg);
  background:linear-gradient(135deg,#22a8df,#67d9ff)
}
.card-front {
  transform:translate(-27%,-50%) rotate(12deg)
}
.apply {
  padding:110px 0;
  background:#fff
}
.apply-grid {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:0px;
  align-items:start
}
.apply-copy>p:not(.kicker) {
  font-weight: 400;
  color:var(--muted);
  margin:24px 0
}
.apply-copy ul {
  list-style:none;
  padding:0;
  margin:30px 0;
  display:grid;
  gap:14px
}
.apply-copy li {
  position:relative;
  padding-left:28px;
  color:#3c4d60;
  font-size:15px
}
.apply-copy li:before {
  content:'✓';
  position:absolute;
  left:0;
  color:var(--blue);
  font-weight:800
}
.form-panel {
  padding:36px;
  border:1px solid var(--line);
  border-radius:26px;
  background:var(--paper);
  box-shadow:var(--shadow)
}
.form-title {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:22px
}
.form-title span {
  font-size:10px;
  color:var(--blue);
  font-weight:800;
  letter-spacing:.13em
}
.form-title strong {
  font-size:18px
}
.crm-mobile {
  display:none
}
.form-note {
  text-align:center;
  color:#82909f;
  font-size:11px;
  margin:14px 0 0
}
.disclosure {
  padding:28px 0;
  border-top:1px solid var(--line);
  background:var(--paper)
}
.disclosure p {
  margin:0;
  text-align:center;
  color:#758291;
  font-size:11px
}
.disclosure strong {
  color:#cc3546
}
.site-footer {
  padding:62px 0 30px;
  background:#041a31;
  color:#9db2c5
}
.footer-grid {
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:40px
}
.footer-brand {
  color:#fff
}
.footer-grid>div>p {
  font-size:12px
}
.footer-grid>div:not(:first-child) {
  display:flex;
  flex-direction:column;
  gap:9px;
  font-size:12px
}
.footer-grid strong {
  color:#fff;
  margin-bottom:5px
}
.legal {
  margin-top:42px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.12);
  font-size:10px;
  line-height:1.9
}
@media(max-width:900px) {
	
	.crm-s1 input[type=text], .crm-s1 input[type=tel], .crm-s1 select { width:100% !important;}
  .site-header nav {
    display:none
  }
  .hero {
    padding-top:135px
  }
  .hero-grid,.feature-intro,.cta-grid,.apply-grid {
    grid-template-columns:1fr
  }
  .hero-grid {
    gap:50px
  }
  .hero-copy {
    text-align:center
  }
  .hero-lead {
    margin-inline:auto
  }
  .hero-actions,.hero-proof {
    justify-content:center
  }
  .hero-art {
    min-height:500px;
    max-width:620px;
    width:100%;
    margin-inline:auto
  }
  .hero-art img {
    width:min(100%,540px)
  }
  .feature-intro {
    gap:24px
  }
  .feature-summary {
    margin-top:0
  }
  .feature-summary {
    order:2;
    text-align:center;
    max-width:620px;
    margin-inline:auto
  }
  .feature-person {
    order:3;
    min-height:390px;
    margin:-10px auto -34px;
    max-width:360px;
    width:100%;
    z-index:5
  }
  .feature-heading {
    text-align:center
  }
  .feature-person img {
    height:410px
  }
  .person-glow {
    width:290px;
    height:290px
  }
  .feature-grid {
    grid-template-columns:1fr;
    gap:0;
    margin-top:0;
    padding:58px 28px 24px
  }
  .feature-item {
    padding:24px 4px
  }
  .feature-item+.feature-item {
    border-left:0;
    border-top:1px solid rgba(255,255,255,.12)
  }
  .feature-grid,.review-grid {
    grid-template-columns:1fr
  }
  .feature-grid {
    gap:36px;
    margin-top:55px
  }
  .feature-item {
    padding-bottom:30px;
    border-bottom:1px solid var(--line)
  }
  .card-visual {
    min-height:390px
  }
  .apply-grid {
    gap:45px
  }
  .apply-copy {
    text-align:center
  }
  .apply-copy ul {
    display:inline-grid;
    text-align:left
  }
}
@media(max-width:600px) {
  .shell {
    width:min(100% - 30px,1180px)
  }
  .header-inner {
    height:66px
  }
  .brand {
    line-height:1
  }
  .brand-logo {
    height:55px
  }
  .header-button {
    min-height:40px;
    padding:9px 15px;
    font-size:12px
  }
  .hero {
    min-height:0;
    padding:110px 0 55px
  }
  .hero-copy h1 {
    font-size:50px
  }
  .hero-lead {
    font-size:14px
  }
  .hero-actions {
    display:grid;
    gap:16px
  }
  .text-link {
    padding:10px
  }
  .hero-proof {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:5px;
    font-size:10px
  }
  .hero-grid {
    gap:34px
  }
  .hero-art {
    min-height:390px;
    max-width:390px
  }
  .hero-art img {
    width:100%
  }
  .hero-art-glow {
    width:92%
  }
  .hero-art-caption {
    left:5%;
    bottom:5%;
    max-width:220px;
    padding:10px 13px;
    border-radius:12px
  }
  .hero-art-caption strong {
    font-size:11px
  }
  .features,.reviews,.apply {
    padding:70px 0
  }
  .feature-intro h2,.section-heading h2,.apply-copy h2 {
    font-size:34px
  }
  .feature-summary {
    font-size:15px
  }
  .feature-person {
    min-height:320px;
    max-width:290px;
    margin:-4px auto -30px
  }
  .feature-person img {
    height:335px
  }
  .person-glow {
    width:240px;
    height:240px;
    bottom:20px
  }
  .feature-grid {
    margin-top:28px;
    padding:52px 22px 18px;
    border-radius:22px
  }
  .feature-item {
    padding:22px 2px
  }
  .item-number {
    right:2px
  }
  .review-grid {
    gap:54px;
    margin-top:64px
  }
  .review-grid blockquote {
    padding:39px 24px 25px
  }
  .review-avatar {
    top:-30px;
    left:22px;
    width:60px;
    height:60px;
    border-width:3px
  }
  .review-grid blockquote p {
    min-height:0
  }
  .cta {
    padding:75px 0 55px
  }
  .cta-grid {
    gap:24px
  }
  .cta-copy {
    text-align:center
  }
  .cta-copy h2 {
    font-size:38px
  }
  .card-visual {
    min-height:295px
  }
  .money-card {
    width:245px;
    height:150px;
    padding:19px;
    border-radius:17px
  }
  .money-card strong {
    font-size:22px
  }
  .card-front {
    transform:translate(-30%,-50%) rotate(10deg)
  }
  .card-mid {
    transform:translate(-48%,-50%) rotate(-5deg)
  }
  .card-back {
    transform:translate(-66%,-50%) rotate(-18deg)
  }
  .form-panel {
    padding:24px 14px
  }
  .form-title {
    display:block
  }
  .form-title span,.form-title strong {
    display:block
  }
  .form-title strong {
    margin-top:6px
  }
  .crm-desktop {
    display:none
  }
  .crm-mobile {
    display:block
  }
  .footer-grid {
    grid-template-columns:1fr
  }
  .site-footer {
    padding-top:48px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  .button {
    transition:none
  }
}
