@font-face {
  font-family: Inter;
  src: url("../fonts/inter.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
:root {
  --brand: #ff6500; --ink: #0b1b22; --copy: #607482; --line: #d9e2e7;
  --surface: #f5f7f8; --paper: #fff; --dark: #111416;
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
  --space-6: 24px; --space-8: 32px; --space-12: 48px; --space-16: 64px; --space-24: 96px;
  --container: 1200px; --media-wide: 1280px; --gutter: 24px;
  --font: Inter, Arial, sans-serif; --h1: 40px; --h2: 32px;
  --radius-control: 8px; --radius-media: 12px;
  --motion-fast: 240ms; --motion-base: 650ms; --motion-reveal: 1000ms; --motion-image: 900ms; --card-hover-line: rgb(255 101 0 / .5);
  --ease: cubic-bezier(.22,.61,.36,1);
}
*, *::before, *::after { box-sizing: border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:400 16px/1.6 var(--font); }
body, input, button { font-family:var(--font); }
h1,h2,p,ul,ol { margin:0; }
h1 { font-size:var(--h1); font-weight:600; line-height:1.05; letter-spacing:-.02em; overflow-wrap:break-word; }
h2 { font-size:var(--h2); font-weight:500; line-height:1.15; }
a { color:inherit; text-decoration:none; }
button,input { font:inherit; }
button,summary { cursor:pointer; }
button { color:inherit; }
img { max-width:100%; height:auto; }
[hidden] { display:none !important; }
:focus-visible { outline:2px solid currentColor; outline-offset:4px; box-shadow:0 0 0 4px var(--paper); }
:target { scroll-margin-top:24px; }
.container { width:min(var(--container), calc(100% - var(--gutter) * 2)); margin-inline:auto; }
.container--wide { width:min(var(--media-wide), calc(100% - var(--gutter) * 2)); }
.skip-link { position:fixed; left:16px; top:16px; transform:translateY(-180%); z-index:100; padding:12px 20px; background:var(--paper); color:var(--ink); }
.skip-link:focus { transform:none; }
.action { display:inline-flex; justify-content:center; align-items:center; min-height:52px; padding:12px 24px; border:1px solid transparent; border-radius:var(--radius-control); background:var(--brand); color:var(--ink); font-size:14px; line-height:1.4; font-weight:600; text-align:center; transition:background-color var(--motion-fast) var(--ease), border-color var(--motion-fast) var(--ease); }
.action--secondary { background:transparent; border-color:var(--line); color:var(--ink); }
.action--inverse { background:var(--paper); color:var(--ink); }
.action--inverse-outline { background:transparent; border-color:rgb(255 255 255 / .4); color:var(--paper); }
.action:disabled { cursor:not-allowed; }
.pending-link { cursor:default; }
.brand { display:inline-block; white-space:nowrap; font-size:43px; font-weight:900; line-height:1; letter-spacing:-.06em; }
.brand span { color:#72767c; }
.site-header { position:relative; z-index:10; background:var(--paper); }
.header-layout { display:grid; grid-template-columns:190px 112px minmax(140px,1fr) 96px 172px 150px; align-items:center; column-gap:16px; }
.header-identity, .header-contact, .header-descriptor, .header-address, .header-socials, .header-callback { margin-block:20px; }
.header-descriptor { font-size:12px; line-height:1.5; max-width:120px; color:var(--copy); }
.header-address { font-size:12px; line-height:1.5; max-width:215px; }
.header-contact { display:flex; flex-direction:column; align-items:center; }
.contact-phone { font-size:16px; font-weight:600; white-space:nowrap; }
.header-contact small { font-size:11px; color:var(--copy); }
.header-callback { font-size:12px; min-height:44px; padding-inline:12px; }
.social-links { display:flex; align-items:center; gap:6px; }
.social-links > * { display:grid; place-items:center; min-width:28px; min-height:44px; font-size:11px; font-weight:700; }
.site-header--inner .main-navigation { border-bottom:1px solid var(--line); }
.main-navigation { grid-column:1/-1; display:flex; align-items:center; gap:32px; border-top:1px solid var(--line); min-height:60px; position:relative; }
.navigation-link, .disclosure > summary { min-height:44px; display:flex; align-items:center; font-size:14px; font-weight:500; padding-block:10px; }
.disclosure > summary { list-style:none; gap:12px; }
.disclosure > summary::-webkit-details-marker { display:none; }
.disclosure-mark { transition:transform var(--motion-fast) var(--ease); }
.disclosure[open] .disclosure-mark { transform:rotate(180deg); }
.service-menu__panel, .search-menu__panel { position:absolute; top:100%; left:0; right:0; padding:32px; color:var(--ink); background:var(--paper); border:1px solid var(--line); box-shadow:0 20px 48px rgb(11 27 34 / .12); border-radius:var(--radius-control); }
.service-menu__panel { right:auto; width:min(310px,calc(100vw - 32px)); display:grid; grid-template-columns:1fr; gap:0; align-content:start; min-height:0; padding:20px; }
.service-menu__panel.has-active { width:min(820px,calc(100vw - 32px)); grid-template-columns:270px minmax(0,1fr); }
.service-menu__group { grid-column:1; min-width:0; }
.service-menu__direction { display:flex; align-items:center; min-height:43px; padding:2px 8px 2px 12px; border-radius:8px; }
.service-menu__group.is-active .service-menu__direction { background:var(--soft,#f5f7f8); }
.service-menu__direction > :first-child { flex:1; min-width:0; font-size:14px; font-weight:600; }
.service-menu__switch { display:grid; place-items:center; flex:0 0 34px; width:34px; height:34px; border:0; border-radius:6px; background:transparent; color:var(--copy); cursor:pointer; }
.service-menu__switch span { font-size:22px; line-height:1; }
.service-menu__switch:focus-visible { outline:2px solid var(--brand); outline-offset:2px; }
.service-menu__items { position:absolute; top:20px; left:310px; right:20px; bottom:20px; overflow:auto; margin:0; padding:6px 20px 6px 28px; border-left:1px solid var(--line); list-style:none; }
.service-menu__items[hidden] { display:none !important; }
.service-menu__items li { font-size:14px; line-height:1.45; }
.service-menu__items a,.service-menu__items .pending-link { display:inline-block; padding:10px 0; }
.search-menu { margin-left:auto; }
.search-menu summary { justify-content:center; min-width:44px; }
.search-menu__panel { left:auto; width:min(520px,100%); }
.search-form label { display:block; margin-bottom:12px; }
.search-form > div { display:flex; gap:12px; }
.search-form input { min-width:0; width:100%; min-height:52px; border:1px solid var(--copy); border-radius:var(--radius-control); padding:12px; }
.menu-toggle { min-width:44px; min-height:44px; padding:8px 12px; border:1px solid currentColor; background:transparent; border-radius:var(--radius-control); }
.site-header--home { background:transparent; color:var(--paper); }
.site-header--home .header-layout { grid-template-columns:auto minmax(0,1fr) auto; gap:40px; }
.site-header--home .brand span { color:var(--paper); }
.site-header--home .header-identity { grid-column:1; grid-row:1; }
.site-header--home .header-contact { grid-column:3; grid-row:1; }
.site-header--home .main-navigation { grid-column:2; grid-row:1; border:0; gap:24px; justify-content:center; }
.site-header--home .navigation-link, .site-header--home summary { font-size:13px; }
.site-header--home .contact-phone { font-size:14px; font-weight:400; }
.home-hero { position:relative; isolation:isolate; background:var(--dark); color:var(--paper); min-height:700px; }
.home-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg, rgb(0 0 0 / .42), rgb(0 0 0 / .12)); }
.home-hero__image { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; object-position:center; }
.home-hero__content { padding-block:110px 120px; }
.home-hero__card { max-width:560px; padding:32px; border:1px solid rgb(255 255 255 / .08); border-radius:18px; background:rgb(17 20 22 / .2); backdrop-filter:blur(10px); }
.eyebrow { font-size:12px; line-height:1.5; }
.home-hero h1 { font-size:44px; line-height:50px; letter-spacing:normal; margin-top:20px; }
.home-hero__description { font-size:18px; line-height:1.55; margin-top:24px; }
.hero-actions { display:flex; flex-wrap:wrap; gap:16px; margin-top:32px; }
.hero-actions .action { border-radius:12px; padding:15px 20px; flex:1; white-space:nowrap; }
.breadcrumbs { padding-block:18px; font-size:12px; color:var(--copy); }
.breadcrumbs ol { list-style:none; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.breadcrumbs li { display:flex; gap:8px; align-items:center; }
.breadcrumbs li + li::before { content:"›"; }
.breadcrumbs a { text-decoration:underline; text-underline-offset:3px; }
.inner-hero { background:#f3f5f8; }
.inner-hero__content { padding-block:71px 60px; }
.inner-hero__copy { max-width:930px; margin-top:30px; color:#626b74; font-size:13px; line-height:1.5; }
.inner-hero__copy p + p { margin-top:16px; }
.inner-hero__facts { display:flex; flex-wrap:wrap; gap:24px; padding:0; margin-top:28px; list-style:none; font-size:13px; }
.inner-hero__facts li { display:flex; align-items:center; gap:8px; }
.inner-hero__facts li::before { content:"✓"; color:var(--ink); }
.site-footer { background:#f3f5f8; padding-block:54px 30px; }
.footer-heading { display:flex; justify-content:space-between; align-items:center; gap:40px; padding-bottom:25px; border-bottom:1px solid var(--line); }
.footer-heading p { margin-top:16px; font-size:13px; line-height:1.5; color:var(--copy); }
.footer-heading .action { font-weight:500; min-height:44px; }
.footer-columns { display:grid; grid-template-columns:1fr 1fr 1.08fr; gap:58px; padding-block:24px; border-bottom:1px solid var(--line); }
.footer-columns h2 { font-size:16px; font-weight:600; margin-bottom:16px; }
.footer-columns ul { display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:0; }
.footer-columns li { max-width:100%; font-size:13px; line-height:1.6; padding:0; }
.site-footer .footer-columns li > :is(a,.pending-link) { padding:7px 13px; border:1px solid #cbd3da; border-radius:999px; text-decoration:none; overflow-wrap:anywhere; }
.site-footer .footer-columns li > :is(a,.pending-link):is(:hover,:focus-visible) { border-color:transparent; text-decoration:none; }
.footer-columns p { font-size:13px; margin-top:12px; }
.footer-columns .contact-phone { font-size:20px; }
.footer-columns .social-links { margin-top:8px; }
.footer-columns .contact-placeholder { font-size:11px; color:var(--copy); }
.footer-legal { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; padding-top:24px; color:var(--copy); font-size:12px; }
.footer-legal > div { display:flex; flex-wrap:wrap; gap:24px; }
@media (hover:hover) and (pointer:fine) {
  a:not(.action):hover { text-decoration:underline; text-underline-offset:4px; }
  .action--inverse:hover { background:rgb(255 255 255 / .8); }
  .action--inverse-outline:not(:disabled):hover { background:rgb(255 255 255 / .15); }
  .action--secondary:hover { border-color:var(--ink); }
}
@media (prefers-reduced-motion:no-preference) {
  .disclosure[open] > div { animation:disclose var(--motion-base) var(--ease); }
  @keyframes disclose { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:none; } }
}
@media (max-width:1023px) {
  :root { --h1:36px; --h2:30px; }
  .header-layout, .site-header--home .header-layout { grid-template-columns:minmax(0,1fr) auto auto; column-gap:20px; }
  .header-descriptor,.header-address,.header-socials,.header-callback { display:none; }
  .header-identity,.site-header--home .header-identity { grid-column:1; grid-row:1; }
  .header-contact,.site-header--home .header-contact { grid-column:2; grid-row:1; }
  .menu-toggle { grid-column:3; grid-row:1; }
  .main-navigation,.site-header--home .main-navigation { grid-column:1/-1; grid-row:2; justify-content:flex-start; flex-wrap:wrap; gap:8px 24px; padding-block:12px; }
  .site-header--home .main-navigation { border-top:1px solid rgb(255 255 255 / .2); }
  .home-hero { min-height:650px; }
  .home-hero__content { padding-block:80px 96px; }
  .home-hero h1 { font-size:40px; line-height:1.12; }
  .inner-hero__content { padding-block:58px 56px; }
  .inner-hero__copy { font-size:13.5px; margin-top:27px; }
  .footer-columns { gap:32px; }
}
@media (max-width:767px) {
  :root { --gutter:16px; --h1:34px; --h2:28px; }
  .brand { font-size:32px; }
  .header-layout,.site-header--home .header-layout { gap:8px; }
  .header-identity,.header-contact { margin-block:16px; }
  .contact-phone,.site-header--home .contact-phone { font-size:11px; }
  .header-contact small { display:none; }
  .menu-toggle { font-size:12px; padding-inline:8px; }
  .main-navigation,.site-header--home .main-navigation { flex-direction:column; align-items:stretch; gap:0; }
  .main-navigation > .navigation-link,.disclosure > summary { min-height:44px; }
  .search-menu { margin-left:0; }
  .search-menu summary { justify-content:flex-start; }
  .service-menu__panel,.search-menu__panel { position:static; width:100%; padding:20px; box-shadow:none; }
  .service-menu__panel,.service-menu__panel.has-active { display:block; width:100%; min-height:0; }
  .service-menu__items { position:static; overflow:visible; padding:4px 0 10px 20px; border-left:1px solid var(--line); }
  .home-hero { min-height:640px; }
  .home-hero__image { object-position:60% center; }
  .home-hero__content { padding-block:64px 72px; }
  .home-hero__card { max-width:none; padding:24px 20px; text-align:center; background:rgb(17 20 22 / .42); }
  .home-hero h1 { font-size:26px; line-height:36px; margin-top:16px; }
  .home-hero__description { font-size:16px; line-height:1.4; margin-top:20px; }
  .hero-actions { flex-direction:column; margin-top:24px; gap:12px; }
  .hero-actions .action { width:100%; }
  .inner-hero__content { padding-block:50px 52px; }
  .inner-hero__copy { font-size:14px; line-height:1.55; margin-top:25px; }
  .inner-hero__facts { flex-direction:column; gap:12px; }
  .site-footer { padding-block:40px 26px; }
  .footer-heading { align-items:flex-start; flex-direction:column; gap:22px; }
  .footer-columns { grid-template-columns:1fr; gap:30px; }
  .footer-legal,.footer-legal > div { flex-direction:column; gap:12px; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}

/* Shared quiet feedback for actual controls, without moving layout containers. */
a,button,summary { transition:color var(--motion-base) var(--ease),background-color var(--motion-base) var(--ease),border-color var(--motion-base) var(--ease),box-shadow var(--motion-base) var(--ease),transform var(--motion-base) var(--ease); }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
 :is(.action,.gallery-arrow,.content-link,.navigation-link,.ag-text-link a):hover { transform:translateY(-2px); }
}

/* Hero actions never inherit the ordinary text-link underline. */
:is(.home-hero,.page-hero,.ag-hero,.hero-actions) :is(.wp-block-button__link,.action):hover { text-decoration:none; }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 main img { transition:scale var(--motion-image) var(--ease),translate var(--motion-image) var(--ease); }
 main img:hover { scale:1.012; translate:0 -1px; }
/* Both comparison layers move together, preserving their alignment. */
 main .image-comparison__stage:hover img { scale:1.012; translate:0 -1px; }
}

/* HOME result cards: the square modifier must not size the comparison stage. */
main .projects-grid .image-comparison--square .image-comparison__stage {
  position:relative;
  box-sizing:border-box;
  width:100%;
  height:0 !important;
  min-height:0 !important;
  padding-bottom:75% !important;
  aspect-ratio:auto !important;
  overflow:hidden;
}
main .projects-grid .image-comparison--square .image-comparison__stage > :is(.image-comparison__before,.image-comparison__after) {
  position:absolute;
  inset:0;
  height:100%;
  margin:0;
}
main .projects-grid .image-comparison--square .image-comparison__stage img {
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Thin text arrows share one weight and size, independent of link typography. */
.ag-services-arrow { display:inline-block; font:400 14px/1 Arial,sans-serif; color:inherit; }

/* Shared header/footer feedback. Keep pending links non-interactive. */
:is(.site-header,.site-footer) :is(a,summary,.pending-link),
.site-footer :is(.footer-heading p,#contact > p) {
 transition:color var(--motion-base) var(--ease),border-color var(--motion-base) var(--ease),background-color var(--motion-base) var(--ease),transform var(--motion-base) var(--ease);
}
:is(.site-header,.site-footer) .brand:hover,
.site-header :is(.main-navigation a,.navigation-link):hover { text-decoration:none; }
:is(.site-header,.site-footer) .social-links img { filter:grayscale(1); transition:filter var(--motion-base) var(--ease); }
:is(.site-header,.site-footer) .social-links > * { transition:transform var(--motion-base) var(--ease); }
.site-footer :is(.footer-heading p,#contact > p:not(.contact-placeholder),.footer-legal) { font-size:14px; font-weight:300; }
.site-footer :is(.footer-columns li,.footer-legal) > :is(a,.pending-link),
.site-footer .footer-legal > div > :is(a,.pending-link) { display:inline-block; }
@media (hover:hover) and (pointer:fine) {
 .site-header :is(.navigation-link,.main-navigation summary,.service-menu__panel a,.service-menu__panel .pending-link,.contact-phone):hover,
 .site-footer :is(.footer-heading p,.footer-columns a:not(.action),.footer-columns .pending-link,#contact > p:not(.contact-placeholder),.footer-legal a,.footer-legal .pending-link):hover { color:var(--brand); }
 :is(.site-header,.site-footer) .social-links > :hover img { filter:grayscale(0); }
 .site-header .header-callback:hover { border-color:var(--brand); text-decoration:none; }
 .site-footer .footer-heading > .action:hover { color:#000; border-color:#000; background:transparent; transform:none; text-decoration:none; }
}
:is(.site-header,.site-footer) .social-links > a:focus-visible img { filter:grayscale(0); }
.site-header .header-callback:focus-visible { border-color:var(--brand); }
.site-footer .footer-heading > .action:focus-visible { color:#000; border-color:#000; }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 :is(.site-header,.site-footer) .brand:hover,
 :is(.site-header,.site-footer) .social-links > :hover,
 .site-header .main-navigation summary:hover,
 .site-footer :is(.footer-columns li,.footer-legal > div) > :is(a,.pending-link):hover { transform:translateY(-2px); }
}

/* Quiet global return control, shown only after meaningful scrolling. */
.back-to-top { position:fixed; z-index:20; right:max(24px,env(safe-area-inset-right)); bottom:calc(24px + env(safe-area-inset-bottom)); display:grid; place-items:center; width:46px; height:46px; padding:0; border:1px solid rgb(96 116 130 / .25); border-radius:50%; background:rgb(255 255 255 / .88); backdrop-filter:blur(10px); color:var(--copy); box-shadow:0 4px 18px rgb(11 27 34 / .06); opacity:0; visibility:hidden; pointer-events:none; transform:translateY(8px); transition:opacity var(--motion-base) var(--ease),transform var(--motion-base) var(--ease),color var(--motion-base) var(--ease),border-color var(--motion-base) var(--ease),visibility var(--motion-base); }
.back-to-top.is-visible { opacity:1; visibility:visible; pointer-events:auto; transform:none; }
.back-to-top:focus-visible { color:var(--brand); border-color:var(--card-hover-line); }
@media(hover:hover) { .back-to-top:hover { color:var(--brand); border-color:var(--card-hover-line); } }
@media(hover:hover) and (prefers-reduced-motion:no-preference) { .back-to-top.is-visible:hover { transform:translateY(-2px); } }
@media(max-width:767px) { .back-to-top { right:max(16px,env(safe-area-inset-right)); bottom:calc(16px + env(safe-area-inset-bottom)); } }

/* Editorial layout for the three legal information pages. */
.legal-document { max-width:920px; margin:0 auto 80px; color:var(--ink); font-family:var(--font); }
.legal-document__intro { padding:32px 36px; margin:0 0 24px; border:1px solid var(--line); border-left:4px solid var(--brand); border-radius:8px; background:#f5f7f8; }
.legal-document__eyebrow { display:block; color:var(--copy); font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.legal-document .legal-document__lead { max-width:700px; margin:12px 0 0; font-size:clamp(19px,2vw,25px); line-height:1.4; font-weight:500; }
.legal-document .legal-document__meta { margin:18px 0 0; color:var(--copy); font-size:12px; }
.legal-document__section { padding:25px 0 27px; border-bottom:1px solid var(--line); }
.legal-document__section h2 { display:flex; gap:18px; align-items:baseline; margin:0 0 12px; color:var(--ink); font-size:clamp(18px,2vw,23px); line-height:1.35; font-weight:600; }
.legal-document__section h2 span { flex:none; color:var(--brand); font-size:12px; font-weight:700; letter-spacing:.05em; }
.legal-document p,.legal-document li { font-size:15px; line-height:1.75; }
.legal-document__section p { margin:0; }
.legal-document > p { margin:0 0 8px; }
.legal-document a { color:var(--ink); text-decoration:underline; text-decoration-color:var(--brand); text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-document a:hover { color:var(--brand); }
.legal-document__facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 30px; padding:0; margin:20px 0 0; list-style:none; }
.legal-document__facts li { padding:12px 0; border-top:1px solid var(--line); }
.legal-document__contact { margin-top:32px; padding:26px 32px; border-radius:8px; background:#0b1b22; color:#fff; }
.legal-document__contact .legal-document__eyebrow,.legal-document__contact small { color:#b8c7ce; }
.legal-document__contact p { margin:10px 0 6px; font-size:17px; }
.legal-document__contact a { color:#fff; }
.legal-document__contact a:hover { color:#ff6500; }
.legal-document__contact small { display:block; font-size:13px; line-height:1.6; }
@media(max-width:767px) {
  .legal-document { margin-bottom:56px; }
  .legal-document__intro { padding:24px; }
  .legal-document__section { padding-block:22px; }
  .legal-document__section h2 { gap:12px; }
  .legal-document__facts { grid-template-columns:1fr; gap:0; }
  .legal-document__contact { padding:24px; }
}

/* AntiGrav blog articles — добавить один раз в конец foundation.css */
.ag-blog-entry { --ag-ink:#0b1b22; --ag-muted:#607482; --ag-line:#d9e2e7; --ag-accent:#ff6500; max-width:820px; margin:0 auto 72px; color:var(--ag-ink); font-size:clamp(15.5px,1.1vw,17px); line-height:1.7; }
.ag-blog-entry * { box-sizing:border-box; }
.ag-blog-entry__eyebrow { color:var(--ag-accent); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; margin:0 0 16px; }
.ag-blog-entry__lead { font-size:clamp(19px,2vw,23px); line-height:1.48; font-weight:500; margin:0 0 38px; }
.ag-blog-entry__section { padding:25px 0 26px; border-top:1px solid var(--ag-line); }
.ag-blog-entry__section h2 { color:var(--ag-ink); font-size:clamp(21px,2.1vw,27px); line-height:1.3; font-weight:650; letter-spacing:-.025em; margin:0 0 12px; }
.ag-blog-entry__section p { margin:0; }
.ag-blog-entry__contact { margin:25px 0 0; padding:26px 30px; background:#f5f7f8; border:1px solid var(--ag-line); border-radius:12px; }
.ag-blog-entry__contact strong { display:block; font-size:20px; line-height:1.35; }
.ag-blog-entry__contact p { margin:8px 0 17px; color:var(--ag-muted); }
.ag-blog-entry__contact a { display:inline-flex; gap:8px; align-items:center; color:var(--ag-ink); font-weight:700; text-decoration:none; border-bottom:2px solid var(--ag-accent); }
.ag-blog-entry__contact a:hover,.ag-blog-entry__contact a:focus-visible { color:var(--ag-accent); }
@media(max-width:600px) { .ag-blog-entry { margin-bottom:48px; } .ag-blog-entry__lead { margin-bottom:27px; } .ag-blog-entry__section { padding:22px 0; } .ag-blog-entry__contact { padding:22px 20px; } }

/* AntiGrav: форма заявки во встроенном окне */
.ag-inquiry-form {
  display: flex !important;
  flex-direction: column;
  gap: 18px !important;
  margin: 0 !important;
  color: #0b1b22;
}

.ag-inquiry-form > *,
.ag-inquiry-form__row > *,
.ag-inquiry-form__bottom > * {
  margin: 0 !important;
}

.ag-inquiry-form p {
  margin: 0 !important;
}

.ag-inquiry-form__intro {
  padding: 0 0 20px;
  border-bottom: 1px solid #d9e2e7;
}

.ag-inquiry-form__intro span {
  display: block;
  margin-bottom: 8px;
  color: #ff6500;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
}

.ag-inquiry-form__intro p {
  max-width: 430px;
  color: #607482;
  font-size: 14px;
  line-height: 1.55;
}

.ag-inquiry-form__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.ag-inquiry-form__field label {
  display: block;
  color: #0b1b22;
  font-size: 13px;
  font-weight: 600;
}

.ag-inquiry-form__field em {
  color: #ff6500;
  font-style: normal;
}

.ag-inquiry-form__field input,
.ag-inquiry-form__field textarea {
  display: block;
  width: 100%;
  margin: 8px 0 0 !important;
  padding: 12px 14px;
  color: #0b1b22;
  background: #f5f7f8;
  border: 1px solid #d9e2e7;
  border-radius: 8px;
  box-shadow: none;
  font: inherit;
  font-size: 14px;
  outline: none;
}

.ag-inquiry-form__field input {
  height: 48px;
}

.ag-inquiry-form__field textarea {
  min-height: 86px;
  resize: vertical;
}

.ag-inquiry-form__field input:focus,
.ag-inquiry-form__field textarea:focus {
  background: #fff;
  border-color: #ff6500;
  box-shadow: 0 0 0 3px rgba(255, 101, 0, .12);
}

.ag-inquiry-form__bottom {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding-top: 3px;
}

.ag-inquiry-form__consent .wpcf7-list-item {
  margin: 0;
}

.ag-inquiry-form__consent label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #607482;
  font-size: 12px;
  line-height: 1.5;
}

.ag-inquiry-form__consent input[type="checkbox"] {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin: 1px 0 0;
  accent-color: #ff6500;
}

.ag-inquiry-form__consent a {
  color: #0b1b22;
  text-decoration-color: #ff6500;
  text-underline-offset: 2px;
}

.ag-inquiry-form__submit input[type="submit"] {
  min-height: 48px;
  padding: 12px 24px;
  color: #fff;
  background: #ff6500;
  border: 1px solid #ff6500;
  border-radius: 8px;
  box-shadow: none;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}

.ag-inquiry-form__submit input[type="submit"]:hover {
  color: #fff;
  background: #dd5700;
  border-color: #dd5700;
}

@media (max-width: 600px) {
  .ag-inquiry-form__row {
    grid-template-columns: 1fr;
  }

  .ag-inquiry-form__submit input[type="submit"] {
    width: 100%;
  }
}

/* AntiGrav calculator v3 — BEGIN. Replace the previous v2 block. */
.estimate-shell[data-calculator] {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(340px, 1fr);
  gap: 20px;
  align-items: stretch;
  width: 100%;
  min-height: 0;
  padding: 0;
  color: #0b1b22;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.estimate-shell[data-calculator] * { box-sizing: border-box; }
.estimate-shell[data-calculator] .estimate-shell__options {
  display: grid;
  gap: 12px;
  align-content: start;
  min-width: 0;
  padding: 0;
}
.estimate-shell[data-calculator] .choice-group {
  min-width: 0;
  margin: 0;
  padding: clamp(20px, 2.4vw, 30px);
  background: #f5f7f8;
  border: 0;
  border-radius: 13px;
}
.estimate-shell[data-calculator] .choice-group:last-child { border: 0; }
.estimate-shell[data-calculator] .choice-group legend {
  display: flex;
  align-items: baseline;
  gap: 16px;
  width: 100%;
  margin: 0 0 17px;
  padding: 0;
  color: #0b1b22;
  font-size: clamp(18px, 1.7vw, 21px);
  font-weight: 700;
  line-height: 1.35;
}
.estimate-shell[data-calculator] .choice-group legend span {
  color: #ff6500;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0;
}
.estimate-shell[data-calculator] .choice-group__options {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.estimate-shell[data-calculator] .choice-chip { position: relative; display: inline-flex; margin: 0; cursor: pointer; }
.estimate-shell[data-calculator] .choice-chip input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.estimate-shell[data-calculator] .choice-chip span {
  display: inline-flex;
  align-items: center;
  min-height: 43px;
  padding: 9px 14px;
  color: #0b1b22;
  background: #fff;
  border: 1px solid #cbd8df;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  transition: border-color .18s ease, background-color .18s ease, color .18s ease;
}
.estimate-shell[data-calculator] .choice-chip:hover span { border-color: #ff6500; }
.estimate-shell[data-calculator] .choice-chip input:checked + span {
  color: #fff;
  background: #0b1b22;
  border-color: #0b1b22;
  font-weight: 600;
}
.estimate-shell[data-calculator] .choice-chip input:focus-visible + span {
  outline: 3px solid #ff6500;
  outline-offset: 3px;
}
.estimate-shell[data-calculator] .estimate-shell__result {
  min-width: 0;
  padding: clamp(22px, 2.5vw, 30px);
  color: #0b1b22;
  background: #fff;
  border: 1px solid #d9e2e7;
  border-radius: 13px;
  box-shadow: 0 12px 35px rgba(11, 27, 34, .045);
}
.estimate-shell[data-calculator] .estimate-shell__result .eyebrow {
  margin: 0 0 10px;
  color: #607482;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.estimate-shell[data-calculator] .estimate-price {
  margin: 0 0 14px;
  color: #0b1b22;
  font-size: clamp(32px, 3vw, 44px);
  font-weight: 700;
  line-height: 1.12;
  overflow-wrap: anywhere;
}
.estimate-shell[data-calculator] .estimate-note {
  margin: 0 0 18px;
  color: #607482;
  font-size: 13px;
  line-height: 1.55;
}
.estimate-shell[data-calculator] .estimate-selection {
  margin: 0 0 18px;
  padding: 12px 14px;
  color: #0b1b22;
  background: #f5f7f8;
  border: 0;
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.45;
}
.estimate-shell[data-calculator] .wpcf7 { padding-top: 18px; border-top: 1px solid #d9e2e7; }
.estimate-shell[data-calculator] .wpcf7 form { margin: 0; }
.estimate-shell[data-calculator] .wpcf7 .estimate-fields {
  display: grid;
  gap: 14px;
  margin: 0 0 16px;
}
.estimate-shell[data-calculator] .wpcf7 .estimate-fields label {
  display: block;
  color: #0b1b22;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}
.estimate-shell[data-calculator] .wpcf7 .estimate-fields .wpcf7-form-control-wrap { display: block; margin-top: 6px; }
.estimate-shell[data-calculator] .wpcf7 .estimate-fields input {
  width: 100%;
  min-height: 46px;
  padding: 10px 13px;
  color: #0b1b22;
  background: #fff;
  border: 1px solid #ccd8de;
  border-radius: 7px;
  font-size: 16px;
  line-height: 1.3;
}
.estimate-shell[data-calculator] .wpcf7 .estimate-fields input:focus {
  border-color: #ff6500;
  outline: 2px solid #ff6500;
  outline-offset: 1px;
}
.estimate-shell[data-calculator] .wpcf7 form > p { margin: 0 0 15px; }
.estimate-shell[data-calculator] .wpcf7 .wpcf7-acceptance {
  color: #0b1b22;
  font-size: 13px;
  line-height: 1.5;
}
.estimate-shell[data-calculator] .wpcf7 .wpcf7-acceptance label { display: flex; gap: 9px; align-items: flex-start; }
.estimate-shell[data-calculator] .wpcf7 .wpcf7-acceptance input { width: 18px; height: 18px; flex: 0 0 18px; margin: 1px 0 0; accent-color: #ff6500; }
.estimate-shell[data-calculator] .wpcf7 .wpcf7-acceptance a { color: #0b1b22; text-decoration: underline; text-underline-offset: 2px; }
.estimate-shell[data-calculator] .wpcf7 input[type="submit"] {
  display: block;
  width: 100%;
  min-height: 49px;
  padding: 11px 16px;
  color: #fff;
  background: #ff6500;
  border: 1px solid #ff6500;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
}
.estimate-shell[data-calculator] .wpcf7 input[type="submit"]:hover { background: #e65b00; }
.estimate-shell[data-calculator] .wpcf7 .wpcf7-response-output {
  margin: 14px 0 0;
  padding: 10px 12px;
  color: #0b1b22;
  border-radius: 6px;
  font-size: 14px;
}
.estimate-shell[data-calculator] .ag-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 900px) {
  .estimate-shell[data-calculator] { grid-template-columns: minmax(0, 1fr); }
  .estimate-shell[data-calculator] .estimate-shell__result { width: 100%; }
}
@media (max-width: 480px) {
  .estimate-shell[data-calculator] .choice-group { padding: 19px 16px; }
  .estimate-shell[data-calculator] .estimate-shell__result { padding: 22px 18px; }
  .estimate-shell[data-calculator] .choice-chip span { min-height: 42px; padding: 9px 11px; font-size: 13px; }
}

/* AntiGrav calculator v3 — END. */
