/* Crimpal design layer (tasks #354, #366, #606: whole site by section). Colours only through --cd-* tokens from tokens.css (brandbook).
   Gold: one button per screen, no gradients, gold text in the light theme only via --cd-link. */

@font-face{font-family:'Piazzolla';src:url('fonts/Piazzolla.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Onest';src:url('fonts/Onest.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}

/* ---- page frame ---- */
body.cd-on,body.cd-on #page,body.cd-on .site,body.cd-on .site-content,body.cd-on .ast-container,
body.cd-on .entry-content,body.cd-on article{background:var(--cd-bg)!important;color:var(--cd-text)}
body.cd-on{font-family:var(--cd-font-text)!important;font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased}
@media (min-width:768px){body.cd-on{font-size:18px}}
body.cd-on #masthead,body.cd-on .site-header,body.cd-on .ast-mobile-header-wrap,body.cd-on .ast-desktop-header{display:none!important}
/* pages with our first screen: the theme's title and breadcrumbs give way to ours; custom HTML runs full width */
body.cd-hero-page .ast-container,body.cd-skin:not(.cd-sec-blog) .ast-container{max-width:none!important;padding:0!important;display:block!important}
body.cd-hero-page .entry-header,body.cd-hero-page .ast-breadcrumbs-wrapper{display:none!important}
body.cd-on :focus-visible{outline:3px solid var(--cd-focus);outline-offset:2px}
.cd-wrap{width:min(1200px,100%);margin:0 auto;padding:0 20px;box-sizing:border-box}
@media (min-width:1024px){.cd-wrap{padding:0 40px}}

/* ---- header ---- */
.cd-header{background:var(--cd-bg);border-bottom:1px solid var(--cd-border);position:sticky;top:0;z-index:50}
.cd-header__in{display:flex;align-items:center;gap:12px;min-height:64px;flex-wrap:wrap}
.cd-logo{display:inline-flex;align-items:center;gap:10px;color:var(--cd-text)!important;text-decoration:none!important;margin-right:auto}
.cd-logo__name{font-family:var(--cd-font-head);font-weight:700;font-size:20px;letter-spacing:.01em}
.cd-nav{order:3;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.cd-nav ul{display:flex;gap:4px;list-style:none;margin:0;padding:0 0 8px}
.cd-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;white-space:nowrap;color:var(--cd-text-2)!important;text-decoration:none!important;font-size:16px;border-radius:8px}
.cd-nav a:hover{color:var(--cd-text)!important;background:var(--cd-surface-2)}
@media (min-width:960px){.cd-nav{order:0;width:auto}.cd-nav ul{padding:0}}

/* theme switch: capsule, 44×44 buttons, active icon in a gold circle; hidden without JS */
.cd-theme{display:inline-flex;gap:2px;padding:2px;border:1px solid var(--cd-border);border-radius:999px;background:var(--cd-surface)}
html:not([data-theme]) .cd-theme{display:none}
.cd-theme__btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0!important;border-radius:50%!important;background:transparent!important;color:var(--cd-text-2)!important;cursor:pointer;padding:0!important;box-shadow:none!important}
.cd-theme__btn[aria-pressed="true"]{background:var(--cd-gold)!important;color:var(--cd-on-gold)!important}

/* ---- first screen ---- */
.cd-hero{background:var(--cd-bg);color:var(--cd-text);padding:20px 0 32px}
@media (min-width:1024px){.cd-hero{padding:40px 0 56px}.cd-hero .cd-wrap>*{max-width:760px}}
.cd-crumbs{font-size:14px;color:var(--cd-text-3);margin:0 0 12px}
.cd-crumbs a{color:var(--cd-text-3)!important}
.cd-h1{font-family:var(--cd-font-head)!important;font-weight:700;font-size:clamp(2.125rem,1.5rem + 3vw,3.25rem);line-height:1.12;margin:0 0 12px;color:var(--cd-text)!important;letter-spacing:-.005em}
.cd-h2{font-family:var(--cd-font-head)!important;font-weight:700;font-size:clamp(1.625rem,1.3rem + 1.4vw,2.25rem);line-height:1.2;margin:0 0 16px;color:var(--cd-text)!important}
.cd-guide{font-size:15px;color:var(--cd-text-2);margin:0 0 16px;line-height:1.7}
.cd-guide span{color:var(--cd-text-3)}
.cd-guide a,.cd-source a,.cd-tg a,.cd-shortform a{color:var(--cd-link)!important;text-decoration:underline;text-underline-offset:3px}
.cd-guide a:hover,.cd-source a:hover,.cd-tg a:hover{color:var(--cd-link-hover)!important}
.cd-lead{font-size:1.06em;color:var(--cd-text-2);margin:0 0 16px;max-width:640px}
.cd-source{font-size:14px;margin:-8px 0 16px}
.cd-price{margin:0 0 20px;display:flex;flex-direction:column;gap:2px}
.cd-price strong{font-family:var(--cd-font-text);font-weight:600;font-size:20px;color:var(--cd-text);font-variant-numeric:tabular-nums}
.cd-price__fee{font-size:15px;color:var(--cd-text-3)}
.cd-btn-gold{justify-self:start;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:10px;cursor:pointer;
  background:var(--cd-gold)!important;background-image:none!important;color:var(--cd-on-gold)!important;font-family:var(--cd-font-text);font-weight:600;font-size:17px;text-decoration:none!important;box-shadow:none;border:0!important}
.cd-btn-gold:hover{background:var(--cd-gold-hover)!important}
@media (max-width:479px){.cd-btn-gold{width:100%;justify-self:stretch}}
.cd-tg{margin:0;font-size:16px;color:var(--cd-text-3)}

/* photo of Alexey (home, hub): next to the form on desktop, small above the fold on phones */
.cd-hero__grid{display:grid;gap:20px}
.cd-photo{margin:0;order:-1;display:flex;align-items:center;gap:12px}
.cd-photo img{width:72px;height:72px;border-radius:50%;object-fit:cover;display:block}
.cd-photo figcaption{font-size:15px;color:var(--cd-text-2)}
@media (min-width:900px){
  .cd-hero__grid{grid-template-columns:minmax(0,1fr) 240px;gap:48px;align-items:start}
  .cd-photo{order:0;flex-direction:column;align-items:flex-start;margin-top:8px}
  .cd-photo img{width:240px;height:240px;border-radius:12px}
}

/* ---- situations (hub) ---- */
.cd-situations{background:var(--cd-bg);padding:8px 0 40px}
.cd-sitlist{list-style:none;margin:0;padding:0;display:grid;gap:10px}
@media (min-width:768px){.cd-sitlist{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.cd-sitlist{grid-template-columns:repeat(3,1fr)}}
.cd-sitlist a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:12px 16px;background:var(--cd-surface);border:1px solid var(--cd-border);border-radius:10px;color:var(--cd-text)!important;text-decoration:none!important}
.cd-sitlist a:hover{border-color:var(--cd-border-field)}
.cd-arrow{color:var(--cd-link)}

/* ---- short form (in the first screen): contact + question, gold «Отправить», Telegram under it ---- */
.cd-shortform{display:grid;gap:12px;max-width:520px;margin:0;padding:16px;background:var(--cd-surface);border:1px solid var(--cd-border);border-radius:12px}
.cd-field{display:grid;gap:6px;font-size:15px;color:var(--cd-text-2)}
.cd-field input,.cd-field select,.cd-field textarea{font:inherit;font-size:17px;color:var(--cd-text)!important;background:var(--cd-surface)!important;border:1px solid var(--cd-border-field)!important;border-radius:8px;padding:12px;min-height:48px;box-sizing:border-box;width:100%}
.cd-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--cd-text-2)}
.cd-check input{width:20px;height:20px;margin-top:2px;accent-color:var(--cd-link)}
.cd-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.cd-formstatus:empty{display:none}
.cd-formstatus{margin:0;font-size:15px}
.cd-formstatus[data-state="error"]{color:var(--cd-error)}
.cd-formstatus[data-state="ok"]{color:var(--cd-success)}

/* ---- old content below the new first screen: same tokens, best effort ---- */
.cd-legacy{background:var(--cd-bg);color:var(--cd-text);font-family:var(--cd-font-text)}
.cd-legacy main,.cd-legacy section,.cd-legacy [class*="band"],.cd-legacy [class*="hero"],.cd-legacy [class*="section"],
.cd-legacy [class*="wrap"]{background:transparent!important;background-image:none!important;color:var(--cd-text)!important}
.cd-legacy [class*="card"],.cd-legacy [class*="panel"],.cd-legacy [class*="box"],.cd-legacy [class*="tile"],.cd-legacy details,.cd-legacy table{
  background:var(--cd-surface)!important;background-image:none!important;border-color:var(--cd-border)!important;color:var(--cd-text)!important;box-shadow:none!important}
.cd-legacy h2,.cd-legacy h3,.cd-legacy h4{font-family:var(--cd-font-head)!important;color:var(--cd-text)!important;background:none!important;-webkit-text-fill-color:currentColor}
.cd-legacy p,.cd-legacy li,.cd-legacy td,.cd-legacy th,.cd-legacy dd,.cd-legacy dt,.cd-legacy span,.cd-legacy small,.cd-legacy strong,.cd-legacy summary{color:inherit!important;-webkit-text-fill-color:currentColor}
.cd-legacy a{color:var(--cd-link)!important}
.cd-legacy a:hover{color:var(--cd-link-hover)!important}
.cd-legacy a[class*="btn"],.cd-legacy button[class*="btn"],.cd-legacy a[class*="button"]{background:transparent!important;background-image:none!important;color:var(--cd-text)!important;
  border:1.5px solid var(--cd-border-field)!important;box-shadow:none!important}
.cd-legacy canvas{display:none!important}
/* the old lead form gives way only where our first screen has the short form; elsewhere it stays */
body.cd-hero-page .cd-legacy section:has(form.cr-fast-form),body.cd-hero-page .cd-legacy form.cr-fast-form{display:none!important}
body.cd-on #colophon,body.cd-on .site-footer{background:var(--cd-surface-2)!important;background-image:none!important;color:var(--cd-text-2)!important;border-top:1px solid var(--cd-border)}
body.cd-on #colophon *{color:inherit;border-color:var(--cd-border)}
body.cd-on #colophon a{color:var(--cd-link)!important}

/* ---- skin (task #606): pages that keep their old first screen and H1 ---- */
.cd-legacy h1{font-family:var(--cd-font-head)!important;font-weight:700;font-size:clamp(2.125rem,1.5rem + 3vw,3.25rem);line-height:1.12;color:var(--cd-text)!important;background:none!important;-webkit-text-fill-color:currentColor;letter-spacing:-.005em}
.cd-legacy h2{font-size:clamp(1.5rem,1.25rem + 1.2vw,2.125rem);line-height:1.2}
.cd-legacy h3{font-size:1.25rem;line-height:1.3}
.cd-legacy img{max-width:100%;height:auto;border-radius:10px}
.cd-legacy input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),.cd-legacy select,.cd-legacy textarea{font:inherit;color:var(--cd-text)!important;background:var(--cd-surface)!important;border:1px solid var(--cd-border-field)!important;border-radius:8px;min-height:48px;box-sizing:border-box}
.cd-legacy input[type="checkbox"],.cd-legacy input[type="radio"]{accent-color:var(--cd-link)}
.cd-legacy button[type="submit"],.cd-legacy input[type="submit"]{background:transparent!important;background-image:none!important;color:var(--cd-text)!important;border:1.5px solid var(--cd-border-field)!important;border-radius:10px;min-height:48px;padding:0 24px;font-family:var(--cd-font-text);font-weight:600;cursor:pointer;box-shadow:none!important}
.cd-legacy hr{border:0;border-top:1px solid var(--cd-border)}
.cd-legacy blockquote{border-left:3px solid var(--cd-gold);margin:24px 0;padding:4px 0 4px 16px;color:var(--cd-text-2)!important;background:none!important}
.cd-legacy th{background:var(--cd-surface-2)!important}
.cd-legacy td,.cd-legacy th{border-color:var(--cd-border)!important}
/* FAQ and any <details>: plain rows, 44 px targets */
.cd-legacy details{border:1px solid var(--cd-border)!important;border-radius:10px;padding:0 16px;margin:0 0 10px}
.cd-legacy summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:600;padding:10px 0}
.cd-legacy details[open] summary{border-bottom:1px solid var(--cd-border)}
body.cd-skin:not(.cd-sec-blog) .cd-skin__content{padding:0 0 8px}

/* theme parts around the content (pages and blog): title, meta, breadcrumbs, sidebar, pagination, comments */
body.cd-skin .entry-title,body.cd-skin .entry-title a,body.cd-skin .page-title,body.cd-skin .ast-archive-title{font-family:var(--cd-font-head)!important;font-weight:700;color:var(--cd-text)!important;background:none!important;-webkit-text-fill-color:currentColor}
body.cd-skin.single .entry-title,body.cd-skin .ast-archive-title,body.cd-skin .page-title{font-size:clamp(2rem,1.45rem + 2.6vw,3rem);line-height:1.15}
body.cd-skin .entry-meta,body.cd-skin .entry-meta *,body.cd-skin .ast-breadcrumbs-wrapper,body.cd-skin .ast-breadcrumbs-wrapper *,body.cd-skin .ast-archive-description{color:var(--cd-text-3)!important;font-size:14px}
body.cd-skin .entry-meta a,body.cd-skin .ast-breadcrumbs-wrapper a{color:var(--cd-text-2)!important}
body.cd-skin #secondary,body.cd-skin #secondary *,body.cd-skin .comments-area,body.cd-skin .comments-area *{background-color:transparent!important;color:var(--cd-text-2)!important;border-color:var(--cd-border)!important}
body.cd-skin #secondary a,body.cd-skin .comments-area a{color:var(--cd-link)!important}
body.cd-skin #secondary .widget-title,body.cd-skin .comments-title{font-family:var(--cd-font-head)!important;color:var(--cd-text)!important}

/* blog: readable column, feed as cards */
body.cd-sec-blog .ast-container{max-width:1200px!important;padding:0 20px!important;box-sizing:border-box}
@media (min-width:1024px){body.cd-sec-blog .ast-container{padding:0 40px!important}}
body.cd-sec-blog.single .entry-content{max-width:720px}
body.cd-sec-blog.single .entry-content:has(.ab-article){max-width:none}
body.cd-sec-blog .post-thumb img,body.cd-sec-blog .ast-blog-featured-section img{border-radius:12px;height:auto}
body.cd-sec-blog:not(.single) #primary article,body.cd-sec-blog:not(.single) .ast-article-post{background:var(--cd-surface)!important;border:1px solid var(--cd-border)!important;border-radius:12px;box-shadow:none!important;padding:16px!important;margin-bottom:20px!important;box-sizing:border-box}
body.cd-sec-blog:not(.single) #primary article *{color:var(--cd-text-2)}
body.cd-sec-blog:not(.single) #primary .entry-title{font-size:1.375rem;line-height:1.25;margin:12px 0 8px}
body.cd-sec-blog:not(.single) #primary .entry-title a{text-decoration:none!important}
body.cd-sec-blog:not(.single) #primary .entry-title a:hover{color:var(--cd-link-hover)!important}
body.cd-sec-blog:not(.single) #primary .read-more a,body.cd-sec-blog:not(.single) #primary .ast-button{background:transparent!important;color:var(--cd-link)!important;border:0!important;padding:0!important;text-decoration:underline;text-underline-offset:3px}
body.cd-skin .ast-pagination a,body.cd-skin .ast-pagination span,body.cd-skin .nav-links a,body.cd-skin .nav-links span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--cd-border)!important;border-radius:8px;background:var(--cd-surface)!important;color:var(--cd-text)!important;text-decoration:none!important}
body.cd-skin .ast-pagination .current,body.cd-skin .nav-links .current{border-color:var(--cd-text)!important;font-weight:600}

/* Telegram band at the end of a skin page: the one gold button of that screen */
.cd-cta-band{background:var(--cd-surface-2);color:var(--cd-text);padding:40px 0;margin:40px 0 0;border-top:1px solid var(--cd-border)}
.cd-cta-band .cd-h2{margin-bottom:8px}
.cd-cta{margin:0;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
body.cd-sec-blog .cd-cta-band{border-radius:12px;padding:32px 24px;border:1px solid var(--cd-border);margin:32px 0}
body.cd-sec-blog .cd-cta-band .cd-wrap{padding:0}

@media (prefers-reduced-motion:reduce){body.cd-on *{scroll-behavior:auto!important;transition:none!important}}

/* Theme footer .crimpal-footer (astra-crimpal functions.php, black #080808) in the new design, both themes (owner 10.10.2026).
   Markup and texts untouched: contacts, requisites and the attestat line stay as they are. */
body.cd-on .crimpal-footer{background:var(--cd-surface-2)!important;border-top:1px solid var(--cd-border)!important;padding:64px 32px 0!important;color:var(--cd-text-2)}
body.cd-on .crimpal-footer__grid{max-width:1240px!important}
body.cd-on .crimpal-footer__logo{display:flex;align-items:center;gap:12px;font-family:var(--cd-font-head)!important;letter-spacing:.09em;font-size:24px!important;color:var(--cd-text)!important}
body.cd-on .crimpal-footer__logo::before{content:"";width:48px;height:48px;flex:none;border-radius:50%;background:url(brand/site/krimpal-znak-96.webp) center/cover no-repeat;box-shadow:0 6px 16px -6px rgba(0,0,0,.35)}
body.cd-on .crimpal-footer__logo span{color:var(--cd-link)!important}
body.cd-on .crimpal-footer__tagline{color:var(--cd-text-3)!important}
body.cd-on .crimpal-footer__grid>div>div[style]{color:var(--cd-text-3)!important}
body.cd-on .crimpal-footer__contacts a{color:var(--cd-text-2)!important}
body.cd-on .crimpal-footer__contacts a:hover,body.cd-on .crimpal-footer__links a:hover,body.cd-on .crimpal-footer__legal a:hover{color:var(--cd-link)!important}
body.cd-on .crimpal-footer__ico{color:var(--cd-link)!important}
body.cd-on .crimpal-footer__title{color:var(--cd-text)!important;font-family:var(--cd-font-head)!important;font-size:17px!important}
body.cd-on .crimpal-footer__links a{color:var(--cd-text-2)!important;font-size:15px!important}
body.cd-on .crimpal-footer__bottom{border-top:1px solid var(--cd-border)!important;max-width:1240px!important}
body.cd-on .crimpal-footer__copy,body.cd-on .crimpal-footer__legal a{color:var(--cd-text-3)!important}
body.cd-on .cdh .cdh-foot{border-top:1px solid var(--cd-border)}
body.cd-on .cdh .cdh-foot .logo{display:none}
html:has(body.cd-on){background:var(--cd-bg)!important}
