/*
 * Theme Name:  カケノバ
 * Theme URI:   https://kakenova.jp
 * Author:      KAKENOVA
 * Author URI:  https://kakenova.jp
 * Description: カケノバ 1枚LP版 WordPressテーマ（濃紺×オレンジ×ベージュ）
 * Version:     2.0.0
 * Requires at least: 6.0
 * Requires PHP: 7.4
 * Text Domain: kakenova
 */

/* =========================================================
   KAKE■NOVA  LP  —  公式チラシ準拠（濃紺 × オレンジ × ベージュ）
   ========================================================= */

:root{
  /* Navy */
  --navy:#1B2A4A; --navy-dark:#13203A; --navy-mid:#243A5E; --navy-light:#33486F;
  /* Orange */
  --orange:#E0742B; --orange-dark:#C75F1B; --orange-soft:#F2A463;
  /* Beige / surface */
  --beige:#F5F0E8; --beige-deep:#EFE7DA; --card:#FBF8F3; --white:#FFFFFF;
  /* Text */
  --ink:#262626; --ink-soft:#5E5E5E; --ink-faint:#8A8170;
  /* line */
  --line:#E6DCCB; --line-soft:#EFE8DC;
  /* shape */
  --radius:10px; --radius-lg:16px;
  --shadow:0 6px 24px rgba(27,42,74,.08);
  --shadow-card:0 2px 12px rgba(27,42,74,.06);
  --container:1120px;
  --font:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic UI","Yu Gothic",Meiryo,system-ui,sans-serif;
  --font-en:"Helvetica Neue",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font);
  color:var(--ink);
  background:var(--beige);
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
  font-size:16px;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}

.container{max-width:var(--container);margin-inline:auto;padding-inline:24px}
.section{padding:84px 0}
.section--beige{background:var(--beige)}
.section--cream{background:var(--beige-deep)}
.section--navy{background:var(--navy);color:var(--white)}

/* ---- section heading (英字ラベル + 和文大見出し) ---- */
.sec-head{margin-bottom:44px}
.sec-head__en{
  font-family:var(--font-en);font-weight:700;letter-spacing:.14em;
  color:var(--orange);font-size:14px;display:block;margin-bottom:8px;
}
.sec-head__ja{font-size:30px;font-weight:700;color:var(--navy);line-height:1.35}
.section--navy .sec-head__ja{color:var(--white)}
.section--navy .sec-head__en{color:var(--orange-soft)}

/* ===================== Header ===================== */
.hd{
  position:sticky;top:0;z-index:50;background:rgba(245,240,232,.92);
  backdrop-filter:blur(8px);border-bottom:1px solid var(--line);
}
.hd__in{display:flex;align-items:center;justify-content:space-between;height:66px}
.hd__nav{display:flex;gap:26px;align-items:center}
.hd__nav a{font-size:14.5px;font-weight:500;color:var(--navy);transition:color .2s}
.hd__nav a:hover{color:var(--orange)}
.hd__cta{font-size:14px}
.hd__burger{display:none;background:none;border:0;cursor:pointer;padding:8px}
.hd__burger span{display:block;width:24px;height:2px;background:var(--navy);margin:5px 0;transition:.3s}

/* logo (word mark) */
.logo{font-family:var(--font-en);font-weight:800;font-size:23px;letter-spacing:.02em;line-height:1;display:inline-flex;align-items:baseline}
.logo .k{color:var(--navy)}
.logo .dot{display:inline-block;width:.56em;height:.56em;background:var(--orange);margin:0 .16em;border-radius:1px;align-self:center}
.logo .n{color:var(--orange)}
.section--navy .logo .k{color:#fff}

/* ===================== Buttons ===================== */
.btn{
  display:inline-flex;align-items:center;gap:.5em;justify-content:center;
  font-weight:700;font-size:16px;border-radius:8px;padding:14px 26px;
  cursor:pointer;border:2px solid transparent;transition:.2s;line-height:1.2;
}
.btn--cta{background:var(--orange);color:#fff}
.btn--cta:hover{background:var(--orange-dark)}
.btn--ghost{background:transparent;color:var(--navy);border-color:var(--navy)}
.btn--ghost:hover{background:var(--navy);color:#fff}
.btn--lg{font-size:18px;padding:17px 38px}
.btn__arrow{font-size:1.1em;line-height:0}

/* ===================== Hero ===================== */
.hero{position:relative;overflow:hidden;background:
  linear-gradient(180deg,var(--beige) 0%,var(--beige-deep) 100%)}
.hero__in{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding:74px 0 84px}
.hero__tag{font-family:var(--font-en);font-weight:700;letter-spacing:.1em;color:var(--orange);font-size:15px;margin-bottom:6px}
.hero__tag-ja{color:var(--ink-soft);font-size:14px;margin-bottom:26px;font-weight:500}
.hero__catch{font-size:52px;font-weight:800;line-height:1.32;color:var(--navy);letter-spacing:.01em}
.hero__catch .ai{color:var(--orange)}
.hero__sub{margin:28px 0 34px;font-size:16.5px;color:var(--ink);max-width:34em}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap}
/* hero deco (no photo) */
.hero__art{position:relative;height:360px}
.hero__art .ring{position:absolute;border-radius:50%}
.hero__art .r1{width:300px;height:300px;border:2px solid rgba(27,42,74,.16);top:20px;right:20px}
.hero__art .r2{width:200px;height:200px;border:2px solid rgba(224,116,43,.30);top:90px;right:90px}
.hero__art .blob{position:absolute;width:230px;height:230px;border-radius:46% 54% 56% 44%/52% 44% 56% 48%;
  background:linear-gradient(135deg,var(--navy),var(--navy-light));top:60px;right:50px;box-shadow:var(--shadow)}
.hero__art .chip{position:absolute;background:var(--card);border:1px solid var(--line);border-radius:10px;
  padding:10px 16px;font-weight:700;color:var(--navy);box-shadow:var(--shadow-card);font-size:15px}
.hero__art .chip--1{top:40px;right:170px}
.hero__art .chip--2{top:150px;right:0}
.hero__art .chip--3{top:255px;right:140px}
.hero__art .chip .ai{color:var(--orange)}
/* ヒーロー写真版（チラシ表紙の対話写真） */
.hero__art--photo{height:auto;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 18px 50px rgba(27,42,74,.20)}
.hero__art--photo img{width:100%;height:100%;object-fit:cover;display:block}

/* ===================== Services ===================== */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.svc{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:30px 26px 28px;overflow:hidden}
.svc__no{position:absolute;top:10px;right:16px;font-family:var(--font-en);font-weight:800;font-size:58px;
  color:rgba(224,116,43,.14);line-height:1}
.svc__ttl{font-size:18.5px;font-weight:700;color:var(--navy);margin-bottom:12px;display:flex;align-items:center;gap:10px}
.svc__ttl::before{content:"";width:14px;height:14px;background:var(--orange);flex:none;border-radius:2px}
.svc__txt{font-size:15px;color:var(--ink-soft);line-height:1.85}
.svc--dark{background:var(--navy);border-color:var(--navy)}
.svc--dark .svc__ttl{color:#fff}
.svc--dark .svc__txt{color:rgba(255,255,255,.82)}
.svc--dark .svc__no{color:rgba(255,255,255,.12)}
.svc--accent{background:#fff;border-color:var(--orange);border-width:1.5px}
.svc--accent .svc__no{color:rgba(224,116,43,.18)}

/* ===================== Reasons ===================== */
.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.reason{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;
  border-top:4px solid var(--orange)}
.reason__no{font-family:var(--font-en);font-weight:700;color:var(--orange);letter-spacing:.08em;font-size:13.5px;margin-bottom:10px}
.reason__ttl{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:12px;line-height:1.45}
.reason__txt{font-size:14.5px;color:var(--ink-soft);line-height:1.85}

/* ===================== Flow ===================== */
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.step{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:0 0 22px;overflow:hidden;position:relative}
.step__badge{display:block;text-align:center;font-weight:700;color:#fff;background:var(--orange);padding:9px;font-size:14px;letter-spacing:.04em}
.step--paid .step__badge{background:var(--navy)}
.step__body{padding:18px 20px 0}
.step__no{font-family:var(--font-en);font-weight:700;color:var(--ink-faint);font-size:13px;letter-spacing:.1em}
.step__ttl{font-size:16.5px;font-weight:700;color:var(--navy);margin:6px 0 10px}
.step__txt{font-size:13.5px;color:var(--ink-soft);line-height:1.8}
.flow-note{margin-top:20px;text-align:center;color:var(--ink-soft);font-size:14px}
.flow-note b{color:var(--orange)}

/* ===================== FAQ ===================== */
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px}
.faq{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px}
.faq__q{font-size:16px;font-weight:700;color:var(--navy);display:flex;gap:10px;line-height:1.5}
.faq__q::before{content:"";width:13px;height:13px;background:var(--orange);flex:none;margin-top:6px;border-radius:2px}
.faq__a{font-size:14.5px;color:var(--ink-soft);margin-top:12px;padding-left:23px;line-height:1.85}

/* ===================== Message ===================== */
.msg-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.msg{background:var(--navy);color:#fff;border-radius:var(--radius-lg);padding:34px 32px}
.msg__txt{font-size:15px;line-height:1.95;color:rgba(255,255,255,.9)}
.msg__role{margin-top:22px;font-family:var(--font-en);font-weight:700;color:var(--orange-soft);font-size:12.5px;letter-spacing:.08em}
.msg__name{font-size:20px;font-weight:700;margin-top:4px}
.msg__name span{font-size:13px;font-weight:500;color:rgba(255,255,255,.7);margin-left:8px}

/* ===================== CTA band ===================== */
.cta{background:var(--navy);text-align:center}
.cta__lead{font-size:30px;font-weight:800;color:var(--navy);line-height:1.5}
.cta__lead .accent{color:var(--orange)}
.cta__mail{margin:22px 0 30px;font-family:var(--font-en);font-weight:700;font-size:30px;color:var(--navy)}
.cta__mail a{color:var(--navy)}
.cta__note{color:rgba(255,255,255,.75);font-size:14px;margin-top:18px}

/* ===================== Footer ===================== */
.ft{background:var(--navy);color:#fff;padding:40px 0}
.ft__in{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.ft__tag{font-size:13.5px;color:rgba(255,255,255,.7)}
.ft__links{display:flex;gap:20px;font-size:13.5px}
.ft__links a{color:rgba(255,255,255,.8)}
.ft__links a:hover{color:var(--orange-soft)}
.ft__copy{width:100%;text-align:center;border-top:1px solid rgba(255,255,255,.12);margin-top:24px;padding-top:18px;font-size:12.5px;color:rgba(255,255,255,.55)}

/* ===================== Responsive ===================== */
@media(max-width:980px){
  .hero__in{grid-template-columns:1fr;gap:10px;padding:54px 0 64px}
  .hero__art{display:none}
  .hero__catch{font-size:40px}
  .svc-grid,.reason-grid{grid-template-columns:1fr 1fr}
  .flow{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .hd__nav{display:none}
  .hd__burger{display:block}
  .section{padding:56px 0}
  .hero__catch{font-size:33px}
  .sec-head__ja{font-size:24px}
  .svc-grid,.reason-grid,.faq-grid,.flow,.msg-grid{grid-template-columns:1fr}
  .cta__lead{font-size:23px}.cta__mail{font-size:23px}
}

/* mobile drawer */
.drawer{position:fixed;inset:0 0 0 auto;width:min(78vw,320px);background:var(--beige);box-shadow:-8px 0 30px rgba(0,0,0,.15);
  transform:translateX(100%);transition:.3s;z-index:60;padding:80px 28px 28px;display:flex;flex-direction:column;gap:6px}
.drawer.open{transform:translateX(0)}
.drawer a{padding:14px 4px;border-bottom:1px solid var(--line);font-weight:600;color:var(--navy)}
.drawer .btn{margin-top:18px}
.drawer__close{position:absolute;top:22px;right:22px;background:none;border:0;font-size:26px;color:var(--navy);cursor:pointer}
.scrim{position:fixed;inset:0;background:rgba(19,32,58,.4);opacity:0;visibility:hidden;transition:.3s;z-index:55}
.scrim.open{opacity:1;visibility:visible}

/* ===================== Skip link ===================== */
.skip-link{position:absolute;top:-60px;left:0;background:var(--orange);color:#fff;padding:10px 18px;z-index:100;border-radius:0 0 8px 0;transition:top .2s;font-weight:700}
.skip-link:focus{top:0}

/* ===================== Section heading sub ===================== */
.sec-head__sub{color:var(--ink-soft);font-size:15px;margin-top:6px;line-height:1.7}
.sec-head--center{text-align:center}

/* ===================== Services — 4-card grid ===================== */
.svc-grid--4{grid-template-columns:repeat(2,1fr)}
.svc__lead{font-size:14px;font-weight:700;color:var(--orange);margin-bottom:8px;line-height:1.5}
.svc--dark .svc__lead{color:var(--orange-soft)}

/* ===================== Services — 6-card grid (3x2) ===================== */
.svc-grid--6{grid-template-columns:repeat(3,1fr)}

/* ===================== Hero strength badge ===================== */
.hero__strength{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--navy);color:#fff;
  border-radius:8px;padding:11px 20px;
  font-size:15px;font-weight:700;line-height:1.5;
  margin-bottom:30px;
}
.hero__strength::before{
  content:"";width:12px;height:12px;background:var(--orange);
  flex:none;border-radius:2px;
}

/* ===================== Hero SVG art ===================== */
.hero__art--svg{position:relative;height:360px;display:flex;align-items:center;justify-content:center}
.hero__art--svg svg{width:100%;height:100%;max-width:420px}

/* ===================== Member role / credentials ===================== */
.msg__credentials{font-size:12px;color:rgba(255,255,255,.6);margin-top:2px;margin-bottom:10px;font-weight:500}

/* ===================== Reasons — 4-card grid ===================== */
.reason-grid--4{grid-template-columns:repeat(4,1fr)}

/* ===================== Flow — 5-step ===================== */
.flow--5{grid-template-columns:repeat(5,1fr)}

/* ===================== Flow — 4-step ===================== */
.flow--4{grid-template-columns:repeat(4,1fr)}
.flow-note--4{margin-top:20px;text-align:center;color:var(--ink-soft);font-size:14px}
.flow-note--4 b{color:var(--orange)}

/* step badge navy variant */
.step__badge--navy{background:var(--navy)}

/* ===================== Challenge / Issue cards ===================== */
.issue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:36px}
.issue-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:28px 24px;border-top:4px solid var(--orange)}
.issue-card__no{font-family:var(--font-en);font-weight:700;color:var(--orange);font-size:13px;letter-spacing:.08em;margin-bottom:10px}
.issue-card__ttl{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:10px;line-height:1.45}
.issue-card__txt{font-size:14.5px;color:var(--ink-soft);line-height:1.85}
.issue-bridge{background:var(--navy);border-radius:var(--radius);padding:24px 32px;text-align:center}
.issue-bridge__text{color:#fff;font-size:18px;font-weight:700;line-height:1.6}

/* ===================== 3つのカケル ===================== */
.kakeru-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.kakeru-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius-lg);padding:32px 28px;position:relative;overflow:hidden}
.kakeru-no{font-family:var(--font-en);font-weight:800;font-size:72px;color:rgba(224,116,43,.25);
  line-height:1;margin-bottom:8px}
.kakeru-ttl{font-size:20px;font-weight:700;color:#fff;margin-bottom:12px;display:flex;align-items:center;gap:10px}
.kakeru-ttl::before{content:"";width:14px;height:14px;background:var(--orange);flex:none;border-radius:2px}
.kakeru-txt{font-size:15px;color:rgba(255,255,255,.82);line-height:1.85}

/* ===================== Results block ===================== */
.results-block{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:40px 44px;max-width:760px;margin-inline:auto;text-align:center}
.results-block__ttl{font-size:24px;font-weight:700;color:var(--navy);margin-bottom:18px}
.results-block__body{font-size:15.5px;color:var(--ink-soft);line-height:1.9;margin-bottom:24px}
.results-block__link{display:inline-flex;align-items:center;gap:.4em;font-weight:700;color:var(--orange);
  font-size:15px;border-bottom:1.5px solid var(--orange);padding-bottom:2px}
.results-block__link:hover{opacity:.8}

/* ===================== About section ===================== */
.about-origin{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:32px 36px;margin-bottom:36px;max-width:820px;margin-inline:auto}
.about-origin__ttl{font-size:20px;font-weight:700;color:var(--navy);margin-bottom:14px;
  display:flex;align-items:center;gap:10px}
.about-origin__ttl::before{content:"";width:14px;height:14px;background:var(--orange);flex:none;border-radius:2px}
.about-origin__body{font-size:15px;color:var(--ink-soft);line-height:1.95}

.about-mission{background:var(--navy);border-radius:var(--radius-lg);padding:32px 36px;
  text-align:center;margin-bottom:44px;max-width:820px;margin-inline:auto}
.about-mission__label{font-family:var(--font-en);font-weight:700;letter-spacing:.12em;
  color:var(--orange-soft);font-size:13px;margin-bottom:10px}
.about-mission__text{font-size:22px;font-weight:700;color:#fff;line-height:1.65}

.about-member-heading{font-size:22px;font-weight:700;color:var(--navy);margin-bottom:6px;
  display:flex;align-items:center;gap:10px}
.about-member-heading::before{content:"";width:14px;height:14px;background:var(--orange);flex:none;border-radius:2px}
.about-member-sub{font-size:14.5px;color:var(--ink-soft);margin-bottom:24px}

/* メンバーカード内アバター */
.msg__avatar{width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.18);
  color:#fff;font-family:var(--font-en);font-weight:800;font-size:24px;
  display:flex;align-items:center;justify-content:center;margin-bottom:14px;flex:none}
.msg__sub-role{font-size:12.5px;color:rgba(255,255,255,.65);margin-top:2px;margin-bottom:14px}

/* 事業者情報テーブル */
.about-biz{margin-top:44px;max-width:760px;margin-inline:auto}
.about-biz__ttl{font-size:20px;font-weight:700;color:var(--navy);margin-bottom:18px;
  display:flex;align-items:center;gap:10px}
.about-biz__ttl::before{content:"";width:14px;height:14px;background:var(--orange);flex:none;border-radius:2px}
.biz-table{width:100%;border-collapse:collapse;background:var(--card);border-radius:var(--radius);overflow:hidden;
  border:1px solid var(--line)}
.biz-table th,.biz-table td{padding:14px 20px;font-size:14.5px;text-align:left;border-bottom:1px solid var(--line)}
.biz-table th{width:140px;font-weight:700;color:var(--navy);background:rgba(27,42,74,.04);white-space:nowrap}
.biz-table td{color:var(--ink-soft)}
.biz-table tr:last-child th,.biz-table tr:last-child td{border-bottom:0}
.biz-table a{color:var(--orange);text-decoration:underline}
.biz-table small{font-size:12px;color:var(--ink-faint)}

/* ===================== Contact form ===================== */
.contact-form{max-width:680px;margin-inline:auto;background:rgba(255,255,255,.09);
  border:1.5px solid rgba(255,255,255,.32);border-radius:var(--radius-lg);padding:36px 40px;box-shadow:0 16px 46px rgba(0,0,0,.24)}
.contact-form__row{margin-bottom:22px}
.contact-form__label{display:block;font-size:14.5px;font-weight:700;color:#fff;margin-bottom:8px}
.contact-form__req{display:inline-block;background:var(--orange);color:#fff;font-size:11px;
  font-weight:700;padding:2px 6px;border-radius:4px;margin-left:8px;vertical-align:middle}
.contact-form__input,
.contact-form__textarea{width:100%;background:rgba(255,255,255,.13);border:1.5px solid rgba(255,255,255,.4);
  border-radius:8px;padding:12px 16px;font-size:15px;color:#fff;font-family:var(--font);
  transition:border-color .2s,background .2s;line-height:1.6}
.contact-form__input::placeholder,
.contact-form__textarea::placeholder{color:rgba(255,255,255,.4)}
.contact-form__input:focus,
.contact-form__textarea:focus{outline:none;border-color:var(--orange);background:rgba(255,255,255,.14)}
.contact-form__textarea{resize:vertical;min-height:140px}
.contact-form__submit{text-align:center;margin-top:10px}

/* ===================== CF7 スタイルブリッジ ===================== */
/* CF7 が出力する input/textarea にデザインを継承させる */
.wpcf7-form p{margin:0}
.wpcf7-form .wpcf7-text,
.wpcf7-form .wpcf7-email{
  display:block;width:100%;
  background:rgba(255,255,255,.13);border:1.5px solid rgba(255,255,255,.4);
  border-radius:8px;padding:12px 16px;font-size:15px;color:#fff;font-family:var(--font);
  transition:border-color .2s,background .2s;line-height:1.6;
}
.wpcf7-form .wpcf7-textarea{
  display:block;width:100%;
  background:rgba(255,255,255,.13);border:1.5px solid rgba(255,255,255,.4);
  border-radius:8px;padding:12px 16px;font-size:15px;color:#fff;font-family:var(--font);
  transition:border-color .2s,background .2s;line-height:1.6;
  resize:vertical;min-height:140px;
}
.wpcf7-form .wpcf7-text::placeholder,
.wpcf7-form .wpcf7-email::placeholder,
.wpcf7-form .wpcf7-textarea::placeholder{color:rgba(255,255,255,.4)}
.wpcf7-form .wpcf7-text:focus,
.wpcf7-form .wpcf7-email:focus,
.wpcf7-form .wpcf7-textarea:focus{outline:none;border-color:var(--orange);background:rgba(255,255,255,.14)}
.wpcf7-not-valid-tip{color:var(--orange-soft);font-size:13px;margin-top:4px;display:block}
.wpcf7-response-output{
  border:1.5px solid var(--orange-soft) !important;
  border-radius:var(--radius) !important;
  color:rgba(255,255,255,.9) !important;
  padding:12px 18px !important;
  margin-top:16px !important;
  font-size:14px !important;
}

/* ===================== Footer additions ===================== */
.ft__biz{font-size:12.5px;color:rgba(255,255,255,.6);margin-top:4px}

/* ===================== Thanks page ===================== */
.thanks-section{
  background:var(--navy);
  min-height:calc(100vh - 66px - 112px);
  display:flex;
  align-items:center;
  padding:84px 0;
}
.thanks-box{
  max-width:680px;
  margin-inline:auto;
  text-align:center;
  padding:0 24px;
}
.thanks-icon{
  width:72px;height:72px;background:var(--orange);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 32px;
}
.thanks-icon svg{width:38px;height:38px}
.thanks-title{font-size:28px;font-weight:800;color:#fff;line-height:1.45;margin-bottom:20px}
.thanks-body{font-size:16px;color:rgba(255,255,255,.88);line-height:1.85;margin-bottom:16px}
.thanks-note{
  font-size:13.5px;color:rgba(255,255,255,.62);line-height:1.75;margin-bottom:44px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius);padding:16px 22px;
}
.thanks-note a{color:var(--orange-soft);text-decoration:underline}
.thanks-note a:hover{color:var(--orange)}

/* ===================== Responsive additions ===================== */
@media(max-width:980px){
  .svc-grid--4{grid-template-columns:1fr 1fr}
  .svc-grid--6{grid-template-columns:1fr 1fr}
  .reason-grid--4{grid-template-columns:1fr 1fr}
  .flow--5{grid-template-columns:1fr 1fr}
  .flow--4{grid-template-columns:1fr 1fr}
  .issue-grid{grid-template-columns:1fr}
  .kakeru-grid{grid-template-columns:1fr}
  .contact-form{padding:28px 24px}
  .about-origin,.about-mission{padding:26px 22px}
  .results-block{padding:28px 24px}
  .hero__art--svg{height:280px}
}
@media(max-width:720px){
  .svc-grid--4{grid-template-columns:1fr}
  .svc-grid--6{grid-template-columns:1fr}
  .reason-grid--4{grid-template-columns:1fr}
  .flow--5{grid-template-columns:1fr}
  .flow--4{grid-template-columns:1fr}
  .about-biz{margin-top:32px}
  .biz-table th{width:100px}
  .contact-form{padding:22px 16px}
  .about-mission__text{font-size:18px}
  .hero__art--svg{display:none}
  .thanks-section{padding:56px 0}
  .thanks-title{font-size:22px}
  .thanks-body{font-size:15px}
}
