:root{--ink:#24312b;--ink-soft:#5e6963;--paper:#fbfaf6;--paper-deep:#f2eee5;--wood:#b48153;--wood-deep:#785338;--sage:#6d806e;--sage-pale:#dfe6dc;--line:#dcd7cb;--yellow:#fee500;--yellow-ink:#241f08;--white:#fff;--shadow:0 18px 50px rgba(53,45,35,.13);--radius:8px;--serif:'Nanum Myeongjo','Batang',serif;--sans:'Apple SD Gothic Neo','Malgun Gothic','Noto Sans KR',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65;letter-spacing:0;overflow-x:hidden}a{color:inherit;text-decoration:none}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.wrap{width:min(1160px,calc(100% - 48px));margin:0 auto}.section{padding:112px 0}.kicker,.section-head>span,.section-head>div>span{display:block;margin-bottom:16px;color:var(--wood-deep);font-size:12px;font-weight:800;letter-spacing:.18em}.section-head{max-width:720px;margin-bottom:54px}.section-head h2,.dayplan h2,.faq h2,.final-cta h2{font-family:var(--serif);font-size:clamp(36px,4vw,58px);font-weight:400;line-height:1.2;margin:0 0 20px}.section-head p,.dayplan__intro>p,.faq__title>p{color:var(--ink-soft);font-size:16px}.section-head--row{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:40px}.section-head--row p{margin:0 0 10px;text-align:right}.section-head--center{margin-inline:auto;text-align:center}
.hero{position:relative;min-height:880px;display:flex;align-items:center;isolation:isolate;color:var(--white);overflow:hidden}.hero__image,.hero__shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero__shade{z-index:-1;background:linear-gradient(90deg,rgba(31,37,32,.86) 0%,rgba(37,42,36,.66) 37%,rgba(37,42,36,.08) 72%)}.hero__content{padding-top:28px}.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:25px;font-size:13px;font-weight:700;letter-spacing:.08em}.eyebrow span{width:28px;height:1px;background:var(--white)}.hero h1{font-family:var(--serif);font-size:clamp(48px,6vw,76px);font-weight:400;line-height:1.16;margin:0 0 24px}.hero h1 strong{color:#f0d8b7;font-weight:400}.hero__lead{font-size:18px;line-height:1.8;color:rgba(255,255,255,.84);margin:0 0 28px}.hero__facts{display:flex;flex-wrap:wrap;gap:18px 28px;padding:0;margin:0 0 32px;list-style:none}.hero__facts li{display:flex;align-items:center;gap:8px;font-size:14px}.hero__facts svg{width:19px}.cta{position:relative;display:inline-flex;align-items:center;gap:14px;min-width:390px;padding:16px 19px;border-radius:var(--radius);background:var(--yellow);color:var(--yellow-ink);box-shadow:0 12px 30px rgba(0,0,0,.18);font-size:18px;font-weight:800;transition:transform .18s ease,box-shadow .18s ease;animation:breathe 2.4s ease-in-out infinite;will-change:transform}.cta>svg:first-child{width:29px;height:29px;stroke-width:2}.cta span{display:flex;flex-direction:column;line-height:1.35}.cta small{font-size:11px;font-weight:600;opacity:.62;margin-bottom:2px}.cta__arrow{width:20px!important;margin-left:auto}.cta:hover{box-shadow:0 18px 42px rgba(0,0,0,.26)}.hero__note{display:flex;align-items:flex-start;gap:7px;max-width:580px;margin-top:18px;color:rgba(255,255,255,.7);font-size:12px}.hero__note svg{width:16px;min-width:16px;margin-top:2px}.scroll-cue{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.14em;display:flex;flex-direction:column;align-items:center;gap:8px;color:rgba(255,255,255,.7)}.scroll-cue span{display:block;width:1px;height:38px;background:linear-gradient(var(--white),transparent)}
.trust-strip{background:var(--ink);color:var(--white)}.trust-strip__grid{display:grid;grid-template-columns:repeat(3,1fr);padding:24px 0}.trust-strip__grid>div{display:flex;align-items:center;justify-content:center;gap:13px;border-right:1px solid rgba(255,255,255,.15)}.trust-strip__grid>div:last-child{border:0}.trust-strip svg{color:#d6c4a2}.trust-strip span{display:flex;flex-direction:column;font-size:12px;color:rgba(255,255,255,.62)}.trust-strip b{font-size:14px;color:var(--white)}
.payout{background:var(--paper)}.calc-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:22px}.calc-card{background:var(--white);border:1px solid var(--line);padding:36px;border-radius:var(--radius)}.calc-card--focus{background:var(--sage-pale);border-color:transparent}.calc-card__top{display:flex;justify-content:space-between;align-items:center;color:var(--sage);font-size:12px;font-weight:800;letter-spacing:.12em}.calc-card__top svg{width:30px;height:30px}.calc-card h3{font-size:23px;margin:25px 0 20px}.formula{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px}.formula span,.formula strong{padding:7px 10px;background:rgba(255,255,255,.65);border-radius:4px}.formula b{font-weight:400;color:var(--ink-soft)}.example-total{display:flex;justify-content:space-between;align-items:end;margin:30px 0 18px;padding-top:24px;border-top:1px solid rgba(36,49,43,.14)}.example-total small{color:var(--ink-soft)}.example-total>b{font-size:42px;line-height:1}.example-total em{font-size:18px;font-style:normal;margin-left:3px}.calc-card--focus>p{font-size:12px;color:var(--ink-soft);margin:0}.check-list{padding:6px 0 0;margin:14px 0 0;list-style:none}.check-list li{display:flex;gap:14px;padding:15px 0;border-bottom:1px solid var(--line)}.check-list li:last-child{border:0}.check-list svg{width:20px;color:var(--sage);flex:0 0 auto}.check-list span{display:flex;flex-direction:column;font-size:12px;color:var(--ink-soft)}.check-list b{font-size:15px;color:var(--ink)}.legal-note{display:flex;gap:12px;margin-top:22px;padding:18px 22px;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-soft);font-size:13px}.legal-note svg{min-width:20px;color:var(--wood-deep)}.legal-note p{margin:0}.legal-note b{color:var(--ink)}
.samples{background:var(--paper-deep)}.sample-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.work-card{position:relative;min-height:290px;padding:30px;background:var(--white);border:1px solid transparent;border-radius:var(--radius);display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.work-card:hover{transform:translateY(-6px);border-color:var(--line);box-shadow:var(--shadow)}.work-card__icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--sage-pale);color:var(--sage)}.work-card>div:nth-child(2)>span{font-size:11px;color:var(--wood-deep);font-weight:800}.work-card h3{font-size:21px;margin:5px 0 8px}.work-card p{font-size:14px;color:var(--ink-soft);margin:0}.work-card>b{position:absolute;top:32px;right:30px;font-size:10px;color:#999;font-weight:600}
.dayplan{background:var(--sage);color:var(--white)}.dayplan__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.dayplan .kicker{color:#d9c6a7}.dayplan__intro>p{color:rgba(255,255,255,.72);max-width:420px}.text-link{display:inline-flex;align-items:center;gap:8px;margin-top:24px;padding-bottom:5px;border-bottom:1px solid rgba(255,255,255,.6);font-size:14px;font-weight:700;animation:breatheSubtle 2.6s infinite}.text-link svg{width:18px}.timeline{background:var(--paper);color:var(--ink);padding:34px;border-radius:var(--radius);box-shadow:var(--shadow)}.timeline__head{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid var(--line);font-size:13px}.timeline__head span{padding:4px 8px;background:var(--sage-pale);border-radius:4px;color:var(--sage);font-weight:700}.timeline__head i{font-size:11px;color:var(--ink-soft)}.timeline__item{display:grid;grid-template-columns:76px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.timeline__item:last-child{border:0}.time{font-family:var(--serif);font-size:37px;color:var(--wood-deep)}.time small{font-family:var(--sans);font-size:12px}.timeline__item span{font-size:10px;font-weight:800;color:var(--sage);letter-spacing:.12em}.timeline__item h3{font-size:18px;margin:1px 0 3px}.timeline__item p{font-size:13px;color:var(--ink-soft);margin:0}
.process{background:var(--paper)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.step{position:relative;padding:42px 36px;border-right:1px solid var(--line)}.step:last-child{border:0}.step__num{position:absolute;right:28px;top:20px;font-family:var(--serif);font-size:56px;color:rgba(120,83,56,.1)}.step>svg{width:36px;height:36px;color:var(--wood-deep)}.step h3{font-size:20px;margin:25px 0 8px}.step p{font-size:14px;color:var(--ink-soft);margin:0}
.faq{background:var(--paper-deep)}.faq__grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.faq__title{position:sticky;top:40px;align-self:start}.accordion details{border-top:1px solid var(--line)}.accordion details:last-child{border-bottom:1px solid var(--line)}.accordion summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 3px;font-weight:700;cursor:pointer}.accordion summary::-webkit-details-marker{display:none}.accordion summary svg{width:19px;transition:transform .25s}.accordion details[open] summary svg{transform:rotate(180deg)}.accordion details p{margin:-4px 0 24px;padding-right:45px;color:var(--ink-soft);font-size:14px}
.final-cta{padding:88px 0;background:var(--wood-deep);color:var(--white)}.final-cta__inner{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.final-cta__inner>div>span{font-size:12px;font-weight:700;color:#e5d4bb}.final-cta h2{margin-top:12px}.final-cta p{color:rgba(255,255,255,.72);margin:0}.cta--light{justify-self:end;min-width:370px}
footer{background:#202823;color:rgba(255,255,255,.56);padding:38px 0 110px;font-size:11px}footer .wrap{display:grid;grid-template-columns:auto 1fr auto;gap:35px;align-items:center}footer b{font-family:var(--serif);font-size:24px;color:var(--white)}footer p{margin:0}footer small{white-space:nowrap}.mobile-bar{display:none}.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}
@keyframes breathe{0%,100%{box-shadow:0 10px 26px rgba(0,0,0,.16)}50%{box-shadow:0 13px 34px rgba(254,229,0,.28)}}@keyframes breatheSubtle{0%,100%{opacity:.82}50%{opacity:1}}
@media(max-width:800px){.wrap{width:min(100% - 32px,620px)}.section{padding:76px 0}.hero{min-height:760px;align-items:end;padding-bottom:72px}.hero__image{object-position:80% center}.hero__shade{background:linear-gradient(0deg,rgba(31,37,32,.94) 0%,rgba(31,37,32,.7) 14%,rgba(31,37,32,.14) 100%)}.hero__content{padding-top:109px}.hero h1{font-size:44px}.hero__lead{font-size:15px}.hero__facts{display:grid;gap:8px}.cta{width:100%;min-width:0;font-size:16px}.hero__note{font-size:11px}.scroll-cue{display:none}.trust-strip__grid{grid-template-columns:1fr;padding:7px 0}.trust-strip__grid>div{justify-content:flex-start;border-right:0;border-bottom:1px solid rgba(255,255,255,.1);padding:13px 8px}.trust-strip__grid>div:last-child{border:0}.section-head h2,.dayplan h2,.faq h2,.final-cta h2{font-size:38px}.section-head--row{display:block}.section-head--row p{text-align:left}.calc-grid,.sample-grid,.proof-grid,.dayplan__grid,.faq__grid,.final-cta__inner{grid-template-columns:1fr}.calc-card{padding:25px}.formula{gap:5px}.example-total b{font-size:35px}.sample-grid,.proof-grid{gap:12px}.work-card{min-height:250px}.dayplan__grid,.faq__grid{gap:48px}.timeline{padding:24px 20px}.timeline__head b{font-size:12px}.steps{grid-template-columns:1fr}.step{border-right:0;border-bottom:1px solid var(--line);padding:35px 25px}.step:last-child{border:0}.faq__title{position:static}.final-cta__inner{gap:30px}.cta--light{justify-self:auto;min-width:0}footer{padding-bottom:110px}footer .wrap{grid-template-columns:1fr;gap:10px}.mobile-bar{display:block;position:fixed;z-index:50;left:0;right:0;bottom:0;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(251,250,246,.92);backdrop-filter:blur(12px);border-top:1px solid var(--line)}.mobile-bar .cta{padding:13px 16px;justify-content:center;font-size:15px}.mobile-bar .cta span{display:block}.mobile-bar .cta__arrow{margin-left:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cta,.text-link{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* Proof Section & Lightbox Modal Styling */
.proof { background: var(--paper-deep); }
.proof-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.proof-card { background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; cursor: pointer; transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease; }
.proof-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); border-color: var(--wood); }
.proof-card__img-wrap { position: relative; aspect-ratio: 4/3; overflow: hidden; background: #eae5d9; }
.proof-card__img-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.proof-card:hover .proof-card__img-wrap img { transform: scale(1.05); }
.proof-card__zoom { position: absolute; inset: 0; background: rgba(36, 49, 43, 0.45); backdrop-filter: blur(2px); display: flex; align-items: center; justify-content: center; gap: 8px; color: var(--white); font-size: 13px; font-weight: 700; opacity: 0; transition: opacity 0.25s ease; }
.proof-card:hover .proof-card__zoom { opacity: 1; }
.proof-card__zoom svg { width: 20px; height: 20px; }
.proof-card__info { padding: 20px; display: flex; flex-direction: column; gap: 6px; }
.proof-badge { font-size: 11px; font-weight: 800; color: var(--wood-deep); letter-spacing: 0.08em; text-transform: uppercase; }
.proof-card h3 { font-size: 16px; margin: 0; color: var(--ink); font-weight: 700; }
.proof-card p { font-size: 12px; color: var(--ink-soft); margin: 0; line-height: 1.4; }

/* Lightbox Modal */
.lightbox-modal { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease; padding: 20px; }
.lightbox-modal.is-active { opacity: 1; visibility: visible; }
.lightbox-modal__overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.82); backdrop-filter: blur(8px); }
.lightbox-modal__content { position: relative; z-index: 1; max-width: 90vw; max-height: 90vh; display: flex; align-items: center; justify-content: center; transform: scale(0.95); transition: transform 0.3s ease; }
.lightbox-modal.is-active .lightbox-modal__content { transform: scale(1); }
.lightbox-modal__content img { max-width: 100%; max-height: 85vh; border-radius: var(--radius); box-shadow: 0 20px 60px rgba(0,0,0,0.5); object-fit: contain; }
.lightbox-modal__close { position: absolute; top: -45px; right: 0; background: none; border: none; color: var(--white); font-size: 32px; cursor: pointer; opacity: 0.8; transition: opacity 0.2s; }
.lightbox-modal__close:hover { opacity: 1; }

@media(max-width:1024px) { .proof-grid { grid-template-columns: repeat(2, 1fr); } }
@media(max-width:600px) { .proof-grid { grid-template-columns: 1fr; } }

/* ===== Form Modal & Card Styling (Warm Paper & Wood Theme for v2) ===== */
.form-card {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 32px 24px;
  box-shadow: 0 20px 50px rgba(53, 45, 35, 0.18);
  position: relative;
  text-align: left;
}
.form-card__header {
  text-align: center;
  margin-bottom: 24px;
}
.form-card__badge {
  display: inline-block;
  background: var(--sage-pale);
  color: var(--wood-deep);
  font-size: 12px;
  font-weight: 800;
  padding: 5px 14px;
  border-radius: 999px;
  margin-bottom: 10px;
  letter-spacing: 0.05em;
}
.form-card__title {
  font-family: var(--serif);
  font-size: 25px;
  font-weight: 400;
  color: var(--ink);
  line-height: 1.3;
  margin: 0;
}
.form-card__sub {
  font-size: 13px;
  color: var(--ink-soft);
  margin-top: 8px;
}

.form-group {
  margin-bottom: 18px;
}
.form-label {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--ink);
  margin-bottom: 8px;
}
.form-label .required {
  color: #D32F2F;
}
.form-input-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.form-input-icon {
  position: absolute;
  left: 14px;
  width: 20px;
  height: 20px;
  color: var(--wood);
  pointer-events: none;
}
.form-input {
  width: 100%;
  height: 50px;
  padding: 12px 14px 12px 44px;
  font-size: 15px;
  font-family: var(--sans);
  border: 1.5px solid var(--line);
  border-radius: var(--radius);
  background: var(--paper);
  color: var(--ink);
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
}
.form-input:focus {
  border-color: var(--wood);
  box-shadow: 0 0 0 3px rgba(180, 129, 83, 0.15);
  background: var(--white);
}
.form-input.invalid {
  border-color: #D32F2F;
  background: #FFF5F5;
  box-shadow: 0 0 0 3px rgba(211, 47, 47, 0.15);
}
.form-error {
  display: none;
  font-size: 12px;
  color: #D32F2F;
  margin-top: 6px;
  font-weight: 600;
}

/* Radio chips */
.form-chips {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.form-chip-item {
  position: relative;
  cursor: pointer;
}
.form-chip-item input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.form-chip-item span {
  display: block;
  text-align: center;
  padding: 10px 4px;
  border: 1.5px solid var(--line);
  border-radius: var(--radius);
  font-size: 13px;
  font-weight: 700;
  color: var(--ink-soft);
  background: var(--paper);
  transition: all 0.2s ease;
}
.form-chip-item input[type="radio"]:checked + span {
  border-color: var(--wood-deep);
  background: var(--wood-deep);
  color: var(--white);
  box-shadow: 0 4px 12px rgba(120, 83, 56, 0.25);
}

/* Agreement checkbox */
.form-agree {
  margin: 20px 0 24px;
  padding: 12px 16px;
  background: var(--paper-deep);
  border-radius: var(--radius);
  border: 1px solid var(--line);
}
.form-agree-label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--ink);
  cursor: pointer;
  font-weight: 600;
}
.form-agree-label input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: var(--wood-deep);
  cursor: pointer;
}

/* Submit button - Warm Kakao Yellow & Wood Style */
.form-submit-btn {
  width: 100%;
  padding: 18px;
  border: 2px solid rgba(36, 31, 8, 0.15);
  border-radius: var(--radius);
  background: var(--yellow);
  color: var(--yellow-ink);
  font-size: 17px;
  font-weight: 800;
  font-family: var(--sans);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: 0 10px 25px rgba(254, 229, 0, 0.45);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s;
  animation: breathe 2.4s ease-in-out infinite;
}
.form-submit-btn:hover {
  transform: translateY(-2px);
  background: #fada00;
  box-shadow: 0 14px 32px rgba(254, 229, 0, 0.65);
}
.form-submit-btn:active {
  transform: translateY(0);
}
.form-submit-btn__talk {
  background: var(--yellow-ink);
  color: var(--yellow);
  padding: 3px 8px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 900;
}
.form-submit-btn__arrow {
  font-weight: 900;
}

/* ===== Form Modal Overlay & Container ===== */
.form-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(36, 49, 43, 0.75);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease;
  padding: 16px;
  box-sizing: border-box;
}

.form-modal-overlay.show {
  opacity: 1;
  visibility: visible;
}

.form-modal-container {
  background: var(--white);
  border-radius: 16px;
  width: 100%;
  max-width: 480px;
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.3);
  transform: translateY(20px) scale(0.96);
  transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  border: 1px solid var(--line);
}

.form-modal-overlay.show .form-modal-container {
  transform: translateY(0) scale(1);
}

.form-modal-close {
  position: absolute;
  top: 14px;
  right: 16px;
  width: 34px;
  height: 34px;
  border: none;
  background: var(--paper-deep);
  border-radius: 50%;
  font-size: 24px;
  line-height: 34px;
  color: var(--ink-soft);
  cursor: pointer;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, color 0.2s;
}

.form-modal-close:hover {
  background: var(--wood-deep);
  color: var(--white);
}