/* /consultancy — free consultation booking */
:where(.cs-hero,.cs-how,.cs-topics,.cs-faq,.cs-end,.cs-done){border-top:none;}

.cs-hero{padding:72px 0 80px;}
.cs-hero-grid{display:grid;grid-template-columns:1fr minmax(0,480px);gap:64px;align-items:start;}
.cs-free{display:inline-block;padding:5px 14px;border-radius:999px;background:var(--blue);color:#05131e;font-weight:700;font-size:.85rem;margin-bottom:22px;}
.cs-copy h1{font-size:clamp(2.2rem,4.6vw,3.6rem);line-height:1.06;letter-spacing:-.035em;max-width:14em;}
.cs-copy > p{margin-top:20px;color:var(--muted);font-size:1.08rem;max-width:34em;}
.cs-points{list-style:none;margin-top:28px;display:grid;gap:12px;}
.cs-points li{display:flex;gap:12px;align-items:baseline;font-size:.98rem;}
.cs-points li::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--blue);transform:translateY(-1px);}
.cs-hours{margin-top:22px;font-size:.9rem;}

.cs-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;display:grid;gap:16px;}
.cs-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;}
.cs-card-head h2{font-size:1.25rem;}
.cs-badge{font:700 .9rem 'Space Grotesk',sans-serif;padding:4px 12px;border-radius:999px;border:1px solid var(--blue);color:var(--blue);}
.cs-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.cs-field{display:grid;gap:6px;font-size:.85rem;color:var(--muted);border:0;padding:0;min-width:0;}
.cs-field em{font-style:normal;opacity:.75;}
.cs-field input,.cs-field select,.cs-field textarea{width:100%;padding:12px 14px;border-radius:9px;border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;font-size:.95rem;}
.cs-field textarea{resize:vertical;min-height:110px;}
.cs-field input:focus,.cs-field select:focus,.cs-field textarea:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue);}
.cs-modes legend{margin-bottom:8px;padding:0;}
.cs-mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.cs-mode{position:relative;display:block;cursor:pointer;}
.cs-mode input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;}
.cs-mode span{display:block;text-align:center;padding:11px 8px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--text);font-size:.85rem;font-weight:500;transition:border-color .2s,background .2s;}
.cs-mode input:checked + span{border-color:var(--blue);background:var(--blue-dim);}
.cs-mode input:focus-visible + span{outline:2px solid var(--blue);outline-offset:2px;}
.cs-fine{text-align:center;color:var(--muted);font-size:.82rem;margin-top:-4px;}
.cs-errors{padding:14px 16px;border-radius:10px;background:#E1536122;border:1px solid #E1536155;color:var(--text);font-size:.9rem;}
.cs-errors ul{margin:6px 0 0 18px;}
.cs-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}

.cs-how,.cs-topics,.cs-faq{padding:70px 0;border-top:1px solid var(--line);}
.cs-how .pstep .n{font-size:1rem;}
.cs-faq-list{max-width:760px;display:grid;gap:10px;}
.cs-faq-list details{border:1px solid var(--line);border-radius:12px;background:var(--surface);}
.cs-faq-list summary{cursor:pointer;list-style:none;padding:16px 20px;font-weight:600;display:flex;justify-content:space-between;gap:16px;}
.cs-faq-list summary::-webkit-details-marker{display:none;}
.cs-faq-list summary::after{content:"+";color:var(--blue);font-size:1.3rem;line-height:1;transition:transform .25s;}
.cs-faq-list details[open] summary::after{transform:rotate(45deg);}
.cs-answer{padding:0 20px 18px;color:var(--muted);}
.cs-faq-list details[open] .cs-answer{animation:cs-open .3s ease;}
@keyframes cs-open{from{opacity:0;transform:translateY(-6px);}}

.cs-end{padding:70px 0 100px;border-top:1px solid var(--line);text-align:center;}
.cs-end h2{font-size:1.8rem;margin-bottom:24px;}
.cs-end .btn-row{justify-content:center;}

.cs-done{padding:90px 0 110px;text-align:center;}
.cs-tick{color:var(--blue);margin:0 auto 22px;}
.cs-tick circle{stroke-dasharray:210;stroke-dashoffset:210;animation:cs-draw .9s ease forwards;}
.cs-tick path{stroke-dasharray:60;stroke-dashoffset:60;animation:cs-draw .6s ease .7s forwards;}
@keyframes cs-draw{to{stroke-dashoffset:0;}}
.cs-done h1{font-size:clamp(2rem,4vw,2.8rem);}
.cs-done-sub{color:var(--muted);max-width:32em;margin:14px auto 32px;}
.cs-summary{max-width:460px;margin:0 auto 34px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-align:left;}
.cs-summary div{display:flex;justify-content:space-between;gap:20px;padding:13px 20px;border-bottom:1px solid var(--line);}
.cs-summary div:last-child{border-bottom:0;}
.cs-summary dt{color:var(--muted);}
.cs-summary dd{text-align:right;font-weight:500;}

@media(max-width:900px){
  .cs-hero{padding:44px 0 56px;}
  .cs-hero-grid{grid-template-columns:1fr;gap:36px;}
  .cs-how,.cs-topics,.cs-faq{padding:48px 0;}
}
@media(max-width:520px){
  .cs-card{padding:22px 18px;}
  .cs-row{grid-template-columns:1fr;}
  .cs-mode-grid{grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce){
  .cs-tick circle,.cs-tick path{animation:none;stroke-dashoffset:0;}
  .cs-faq-list details[open] .cs-answer{animation:none;}
}
