:root{--bg:#fbf2e8;--paper:#fff8ef;--ink:#10243a;--muted:#5f6872;--line:#ead8c5;--accent:#d85116;--soft:#fff1df}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.serif{font-family:Georgia,Cambria,"Times New Roman",serif}
a{color:inherit;text-decoration:none}.wrap{max-width:1120px;margin:0 auto;padding:0 22px}.top{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);background:rgba(255,248,239,.95);backdrop-filter:blur(10px)}.topin{display:flex;align-items:center;justify-content:space-between;padding:16px 0}.brand{display:flex;align-items:center;gap:12px}.logo{width:56px;height:56px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;background:var(--paper);font-size:28px}.brandtext{font-size:36px;line-height:.88;font-weight:800;letter-spacing:-.04em}.nav{display:flex;gap:20px;align-items:center;font-weight:700}.lang{display:flex;gap:10px;align-items:center}.active{color:var(--accent);border-bottom:2px solid var(--accent);padding-bottom:4px}
.hero{display:grid;gap:42px;padding:64px 0;grid-template-columns:1.05fr .95fr;align-items:center}.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:white;padding:8px 14px;color:var(--accent);font-size:14px;font-weight:800;box-shadow:0 1px 3px rgba(0,0,0,.04)}h1{font-size:72px;line-height:.98;margin:18px 0 0;letter-spacing:-.05em}h2{font-size:48px;line-height:1.05;margin:0}h3{font-size:28px;line-height:1.1;margin:0}.lead{font-size:20px;line-height:1.65;color:var(--muted);max-width:680px}.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:16px 24px;font-weight:800}.btn.primary{background:var(--accent);color:white;box-shadow:0 8px 18px rgba(216,81,22,.20)}.btn.secondary{background:white;border:1px solid var(--line)}
.card{background:white;border:1px solid var(--line);border-radius:32px;padding:28px;box-shadow:0 1px 6px rgba(0,0,0,.04)}.dark{background:var(--ink);color:white}.dark .muted{color:#d8e0ea}.mini-grid{display:grid;gap:14px;grid-template-columns:repeat(3,1fr);margin-top:16px}.mini{background:var(--soft);border-radius:24px;padding:20px;font-weight:800}.section{padding:42px 0}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.22em;font-weight:900;font-size:13px}.muted{color:var(--muted);line-height:1.7}.grid4{display:grid;gap:18px;grid-template-columns:repeat(4,1fr);margin-top:28px}.grid2{display:grid;gap:24px;grid-template-columns:repeat(2,1fr)}.icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--accent);font-size:28px;margin-bottom:20px}.contact .icon{width:96px;height:96px;font-size:42px}.bigvalue{font-size:28px;font-weight:900;color:#66707a;word-break:break-word}.line{border-top:1px solid #f0dfcf;margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;align-items:center;color:var(--accent);font-weight:800}.split{display:grid;gap:24px;grid-template-columns:.8fr 1.2fr}.steps{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.hint{display:flex;gap:12px;align-items:center;background:white;border-radius:18px;padding:13px 16px;margin-top:10px;font-weight:700}.notice{display:flex;gap:16px;background:var(--paper);border:1px solid var(--line);border-radius:32px;padding:26px}.footer{border-top:1px solid var(--line);background:var(--paper);padding:28px 0;color:#6a737d}.footin{display:flex;align-items:center;justify-content:space-between;gap:16px}.footlinks{display:flex;gap:18px;flex-wrap:wrap}
.legal{max-width:860px;margin:0 auto;padding:54px 22px}.legalbox{background:white;border:1px solid var(--line);border-radius:32px;padding:34px;margin-top:30px}.legalbox section{margin-bottom:30px}.legalbox section:last-child{margin-bottom:0}.back{display:inline-flex;border:1px solid var(--line);background:white;border-radius:999px;padding:10px 16px;color:var(--accent);font-weight:800;margin-bottom:30px}
@media(max-width:900px){.hero,.grid2,.split{grid-template-columns:1fr}.grid4{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:1fr}h1{font-size:54px}h2{font-size:38px}.nav .mainlinks{display:none}.mini-grid{grid-template-columns:1fr}.footin{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.brandtext{font-size:30px}.logo{width:50px;height:50px}h1{font-size:44px}.grid4{grid-template-columns:1fr}.topin{gap:12px}.lang{font-size:14px}.contact .card{padding:24px}.bigvalue{font-size:24px}}


/* KODEX patch: logo + AI forward */
.kodex-logo-mark {
  position: relative;
  font-family: Georgia, serif;
  font-weight: 900;
  font-size: 1.8rem;
  letter-spacing: -0.08em;
}

.kodex-logo-mark span {
  display: inline-block;
  transform: translateX(-1px);
}

.kodex-logo-mark i {
  position: absolute;
  right: 0.38rem;
  bottom: 0.28rem;
  font-style: normal;
  font-size: 1rem;
  color: #d85116;
  transform: rotate(-8deg);
}

.ai-forward {
  padding: 1rem 0 3rem;
}

.ai-forward-box {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 1.5rem;
  align-items: stretch;
}

.ai-copy,
.ai-panel {
  border: 1px solid #ead8c5;
  border-radius: 2rem;
  background: #fff8ef;
  padding: 2rem;
  box-shadow: 0 12px 35px rgba(16, 36, 58, 0.06);
}

.ai-copy h2 {
  margin: 0.4rem 0 1rem;
  font-family: Georgia, serif;
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1;
  color: #10243a;
}

.ai-copy p {
  color: #5f6872;
  line-height: 1.7;
}

.ai-panel {
  background: #ffffff;
}

.ai-panel label {
  display: block;
  margin-bottom: 0.6rem;
  font-weight: 800;
  color: #10243a;
}

.ai-panel textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #ead8c5;
  border-radius: 1.25rem;
  padding: 1rem;
  font: inherit;
  line-height: 1.5;
  color: #10243a;
  background: #fffaf4;
  resize: vertical;
}

.ai-panel textarea:focus {
  outline: 3px solid rgba(216, 81, 22, 0.18);
  border-color: #d85116;
}

.ai-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: 1rem;
}

.ai-btn {
  border: 0;
  border-radius: 999px;
  background: #10243a;
  color: #ffffff;
  padding: 0.9rem 1.1rem;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 10px 25px rgba(16, 36, 58, 0.12);
}

.ai-btn:hover {
  background: #d85116;
}

.ai-note {
  margin-top: 1rem;
  color: #6a737d;
  font-size: 0.95rem;
  line-height: 1.5;
}

@media (max-width: 760px) {
  .ai-forward-box {
    grid-template-columns: 1fr;
  }

  .ai-copy,
  .ai-panel {
    padding: 1.35rem;
    border-radius: 1.6rem;
  }

  .ai-actions {
    flex-direction: column;
  }

  .ai-btn {
    width: 100%;
  }
}


/* LOGO_IMG_PATCH_V1 */
img.logo { object-fit: cover; padding: 0; background: transparent; border: none; }


/* CONTACT_ICONS_PATCH_V1 */
.contact .icon img,
img.icon { object-fit: contain; background: transparent; border: none; padding: 0; }
.contact img.icon { width: 96px; height: 96px; border-radius: 50%; display: block; margin-bottom: 20px; }
@media(max-width:560px){ .contact img.icon { width: 80px; height: 80px; } }
