/* Visual refinement: existing palette, fonts, content and interactions retained. */
:root { --design-line:rgba(39,26,73,.17); --design-accent:#5B3EE8; }
x-dc { display:block; }
h1,h2,h3 { font-kerning:normal; }
button,a,input,summary { -webkit-tap-highlight-color:transparent; }
section[id],header[id] { scroll-margin-top:100px; }
.design-panel { border-radius:12px !important; backdrop-filter:none !important; }
.design-shadow { box-shadow:none !important; }
.design-glow { opacity:.15 !important; animation:none !important; }
.design-label { letter-spacing:.11em !important; font-size:11px !important; }
.design-site-nav { background:rgba(246,242,255,.97) !important; backdrop-filter:blur(12px) !important; }
.design-site-nav a { transition:color .18s ease; }
.design-site-nav a:hover { color:var(--design-accent) !important; }
.design-site-nav a[href]:not([href="#top"]):hover { text-decoration:underline; text-underline-offset:6px; }
.design-hero { padding-top:44px !important; padding-bottom:64px !important; gap:clamp(32px,5vw,80px) !important; }
.design-hero > [aria-hidden=true] { display:none; }
.design-hero > div:nth-last-child(2) { justify-content:flex-start !important; }
.design-hero h1 { font-size:clamp(38px,4.5vw,70px) !important; line-height:1.04 !important; letter-spacing:-.045em !important; margin-top:16px !important; }
.design-hero h1 em { position:relative; white-space:nowrap; }
.design-hero h1 em::after { content:''; position:absolute; height:1px; background:currentColor; left:0; right:0; bottom:1px; opacity:.45; }
.design-hero h1 + p { margin-top:26px !important; max-width:510px !important; line-height:1.7 !important; }
.design-hero .design-label { padding-bottom:16px; border-bottom:1px solid var(--design-line); margin-bottom:0 !important; }
.design-hero .design-label i { box-shadow:none !important; }
.design-hero h1 ~ div:first-of-type { margin-top:28px !important; }
.design-hero h1 ~ div:last-of-type { margin-top:32px !important; padding:22px 0 0 !important; background:transparent !important; border:0 !important; border-top:1px solid var(--design-line) !important; border-radius:0 !important; gap:18px 28px !important; }
.design-hero > div:last-child { padding:18px !important; background:#211A39 !important; border:1px solid rgba(39,26,73,.25) !important; border-radius:14px !important; }
.design-hero > div:last-child > div:first-child { padding:0 2px 8px !important; font-size:10px !important; }
.design-hero > div:last-child > div:first-child i { animation:none !important; box-shadow:none !important; }
.design-hero > div:last-child > div:nth-child(2) { padding:0 !important; background:transparent !important; border:0 !important; border-radius:0 !important; gap:10px !important; align-items:stretch !important; }
.design-hero > div:last-child > div:nth-child(2) > div { max-height:190px !important; border-radius:8px !important; transform:none !important; animation:none !important; box-shadow:none !important; flex:1 1 0 !important; }
.design-hero form { margin-top:22px !important; padding:22px 0 0 !important; border:0 !important; border-top:1px solid rgba(255,255,255,.16) !important; border-radius:0 !important; background:transparent !important; gap:14px !important; }
.design-hero input { border-radius:8px !important; background:rgba(255,255,255,.04) !important; }
input:focus { outline:2px solid #AA91FF; outline-offset:2px; }
.design-section > .design-label:first-child { padding-top:20px; border-top:1px solid var(--design-line); }
.design-section h2 { line-height:1.08 !important; }
section[aria-label="Ключевые цифры"] { background:#211A39 !important; }
section[aria-label="Ключевые цифры"] strong { font-variant-numeric:tabular-nums; }
#system .design-panel { background:rgba(255,255,255,.5) !important; border-top:2px solid #7558FF !important; }
#nishi a.design-panel { transition:border-color .2s ease,background .2s ease !important; }
#nishi a.design-panel:hover { background:#fff !important; border-color:#7558FF !important; }
.portfolio-card { border-radius:10px !important; background:transparent !important; padding:20px !important; }
.portfolio-platform { font-size:11px !important; text-transform:uppercase; letter-spacing:.1em; }
.portfolio-card h3 { min-height:2.5em; font-size:20px; font-weight:500; }
.portfolio-video { border-radius:6px !important; }
.portfolio-stats { padding-top:16px; border-top:1px solid rgba(255,255,255,.15); }
.case-teaser { border-radius:10px !important; background:transparent !important; }
.case-teaser:hover { transform:none !important; background:rgba(255,255,255,.035) !important; }
.case-teaser-niche { font-size:12px !important; }
.case-teaser-metric { font-variant-numeric:tabular-nums; }
.case-teaser-open { padding-top:16px; border-top:1px solid rgba(255,255,255,.17); }
.founder-portrait,.founder-portrait img { border-radius:10px !important; }
#price article { border-radius:12px !important; box-shadow:none !important; }
#price article:first-child { border-top:3px solid #1B1630 !important; }
#price article:last-child { border-top:3px solid #D8FF56 !important; }
#faq summary { padding-top:24px !important; padding-bottom:24px !important; }
#faq details[open] { border-bottom-color:#7558FF !important; }
button { transition:background .18s ease,border-color .18s ease,transform .18s ease; }
button:hover { filter:brightness(.97); }
@media(min-width:1100px) { .design-hero { grid-template-columns:1.08fr 1fr !important; } }
@media(max-width:760px) {
 .design-hero { padding-top:26px !important; padding-bottom:42px !important; gap:32px !important; }
 .design-hero h1 { max-width:600px !important; margin-top:14px !important; }
 .design-hero h1 + p { font-size:15px !important; margin-top:20px !important; }
 .design-hero > div:last-child { padding:16px !important; }
 .design-hero > div:last-child > div:nth-child(2) > div { max-height:168px !important; }
 .design-hero h1 ~ div:last-of-type { gap:14px 20px !important; }
 .design-section h2 { overflow-wrap:break-word; }
 .case-teaser-body { padding:18px !important; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto !important; } }

/* Personal editorial section. Photography, a clear statement, then evidence. */
#founder.founder-editorial { display:grid; grid-template-columns:1fr 1.15fr; gap:0 52px; padding:36px; border:0; border-radius:0; background:transparent; color:#fff; overflow:visible; }
.founder-photo { min-width:0; align-self:stretch; overflow:hidden; border-radius:4px; background:#302b3c; }
.founder-photo img { display:block; width:100%; height:100%; min-height:330px; max-height:410px; object-fit:cover; object-position:65% center; }
.founder-story { align-self:center; padding:12px 0; }
.founder-kicker { margin:0 0 24px; font-size:11px; line-height:1.6; color:#B8A4ED; letter-spacing:.09em; text-transform:uppercase; }
#founder .founder-story h2 { font-size:clamp(28px,3.2vw,44px); font-weight:500; line-height:1.15 !important; letter-spacing:-.035em; margin:0 0 24px; }
.founder-story h2 span { color:#AA91FF; }
.founder-statement { font-size:14px; line-height:1.8; color:#C6C1D2; max-width:540px; margin:0; }
.founder-signature { display:grid; gap:5px; margin-top:28px; }
.founder-signature strong { font-size:14px; font-weight:600; }
.founder-signature span { font-size:12px; color:#B1AABF; }
.founder-track-record { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr 1.15fr; gap:28px; margin-top:36px; border-top:1px solid #ffffff26; padding-top:26px; }
.founder-track-record > div { display:flex; flex-direction:column; gap:7px; }
.founder-track-record > div + div { border-left:1px solid #ffffff26; padding-left:28px; }
.founder-track-record strong { font-size:27px; font-weight:500; letter-spacing:-.025em; }
.founder-track-record span { font-size:12px; color:#B1AABF; line-height:1.6; }
/* Footer navigation never inherits the header navigation background. */
footer nav { background:transparent !important; backdrop-filter:none !important; }
footer nav a:hover { color:#CBB9FF !important; }
.site-footer { padding:64px max(clamp(24px,5vw,64px),calc((100vw - 1440px)/2)) 28px; color:#fff; background:#171327; border-top:1px solid #ffffff20; }
.footer-invitation { display:grid; grid-template-columns:1.3fr 1fr; gap:48px; align-items:center; padding-bottom:52px; }
.footer-kicker { margin:0 0 20px; font-size:10px; line-height:1.6; letter-spacing:.12em; text-transform:uppercase; color:#B8A4ED; }
.footer-invitation h2 { font-size:clamp(34px,4vw,56px); line-height:1.08; letter-spacing:-.04em; font-weight:500; margin:0 0 22px; }
.footer-invitation h2 > span { color:#AA91FF; }
.footer-intro { font-size:14px; line-height:1.8; color:#BDB6CD; margin:0; }
.footer-action { max-width:370px; width:100%; justify-self:end; border-left:1px solid #ffffff26; padding-left:32px; }
.footer-call-label { display:block; font-size:12px; color:#CFC6E4; margin-bottom:18px; }
.footer-action button { width:100%; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:19px 22px; border:0; border-radius:8px; background:#7558FF; color:white; font:inherit; font-size:14px; font-weight:600; cursor:pointer; }
.footer-action button span { font-size:24px; font-weight:400; }
.footer-action button:hover { background:#846AFF; }
.footer-action > p { font-size:11px; line-height:1.6; color:#A69DBA; margin:14px 0 0; }
.footer-links { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; padding:32px 0; border-top:1px solid #ffffff26; border-bottom:1px solid #ffffff26; }
.footer-links nav { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.footer-links h3 { margin:0 0 7px; color:#9388A8; font-size:10px; letter-spacing:.1em; text-transform:uppercase; font-weight:500; }
.footer-links a { color:#DAD4E4; font-size:14px; line-height:1.6; }
.footer-links a:hover { text-decoration:underline; text-underline-offset:4px; }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px; padding-top:28px; }
.footer-brand { display:grid; gap:5px; color:white; font-size:13px; font-weight:800; letter-spacing:.015em; }
.footer-brand span { font-size:10px; color:#AA91FF; letter-spacing:0; font-weight:600; }
.footer-bottom p,.footer-bottom > span { margin:0; font-size:11px; color:#958BA8; }
@media(max-width:800px) {
 #founder.founder-editorial { grid-template-columns:1fr 1.15fr; padding:20px 0; gap:0 28px; }
 .founder-photo img { min-height:360px; }
 .founder-track-record strong { font-size:22px; }
 .footer-invitation { grid-template-columns:1fr; gap:32px; }
 .footer-action { justify-self:start; padding-left:0; border-left:0; max-width:360px; }
 .footer-links { grid-template-columns:1fr 1fr; gap:32px 24px; }
}
@media(max-width:600px) {
 #founder.founder-editorial { grid-template-columns:1fr; padding:0; gap:28px; }
 .founder-photo img { min-height:0; height:270px; max-height:none; }
 .founder-story { padding:0; }
 .founder-kicker { font-size:10px; margin-bottom:18px; }
 #founder .founder-story h2 { font-size:31px; margin-bottom:20px; }
 .founder-statement { font-size:14px; line-height:1.75; }
 .founder-track-record { grid-template-columns:1fr 1fr; gap:20px; margin-top:0; padding-top:24px; }
 .founder-track-record > div + div { padding-left:20px; }
 .founder-track-record > div:last-child { grid-column:1/-1; padding:20px 0 0; border-left:0; border-top:1px solid #ffffff26; }
 .founder-track-record span { font-size:11px; }
 .site-footer { padding:40px 24px 24px; }
 .footer-invitation { padding-bottom:32px; }
 .footer-invitation h2 { font-size:36px; }
 .footer-intro { font-size:13px; }
 .footer-bottom { gap:20px; }
 .footer-bottom p { order:3; width:100%; }
}
/* Full-project audit: stable scale and responsive content rhythm. */
.design-section-intro { align-items:flex-start !important; gap:28px !important; margin-bottom:40px !important; }
.design-section-intro > .design-label { padding-top:10px; }
.design-section h2 { font-size:clamp(32px,4vw,58px) !important; }
.design-interior h1 { font-size:clamp(34px,4.8vw,68px) !important; line-height:1.06 !important; letter-spacing:-.04em !important; }
.design-interior section h2 { font-size:clamp(28px,3.2vw,46px) !important; }
.design-interior input,.design-interior textarea { min-width:0; width:100%; }
.design-interior section p,.design-interior article p { text-wrap:pretty; }
.design-interior article { border-radius:12px !important; }
.design-home #price { grid-template-columns:1fr !important; gap:32px !important; }
.design-home #price > div:first-child { display:grid; grid-template-columns:1.4fr 1fr; gap:0 64px; align-items:end; }
.design-home #price > div:first-child > .design-label { grid-column:1/-1; }
.design-home #price h2 { margin:20px 0 0 !important; max-width:680px; }
.design-home #price > div:first-child > p:last-child { max-width:450px !important; }
.design-home #price > div:last-child { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:24px !important; }
.design-home #price article { min-height:500px !important; padding:32px !important; }
.design-home #price article strong { font-variant-numeric:tabular-nums; }
.design-home #nishi a { transition:background .18s ease,border-color .18s ease; }
.design-home #nishi a:hover { background:#EAE3FF !important; border-color:#7558FF !important; }
.design-site-nav { isolation:isolate; }
summary { cursor:pointer; }
summary:focus-visible { outline:2px solid #7558FF; outline-offset:4px; }
form button[type="submit"] { min-height:48px; }
form button[disabled] { opacity:.65; cursor:wait; }
form input,form textarea { transition:border-color .18s ease; }
form input::placeholder,form textarea::placeholder { opacity:1; }
@media(max-width:1000px) and (min-width:761px) {
 .design-site-nav > div:first-child { flex-wrap:wrap; }
 .design-site-nav sc-if > div { gap:16px !important; }
 .design-section-intro > h2 { flex-basis:55% !important; }
 .design-section-intro > .design-label { flex-basis:100% !important; }
}
@media(max-width:760px) {
 .design-section { padding-top:48px !important; padding-bottom:48px !important; }
 .design-section-intro { gap:18px !important; margin-bottom:28px !important; }
 .design-section-intro > .design-label { flex-basis:100% !important; padding-top:0; }
 .design-section-intro > h2 { flex-basis:100% !important; }
 .design-section h2 { font-size:34px !important; line-height:1.1 !important; text-align:left !important; }
 .design-interior section h2 { font-size:29px !important; }
 .design-card { min-height:0 !important; padding:24px !important; }
 .design-card > strong { margin-top:24px !important; }
 .design-card > i { margin-top:24px !important; }
 .design-home #price > div:first-child { grid-template-columns:1fr !important; gap:18px; }
 .design-home #price h2 { margin:0 !important; }
 .design-home #price > div:last-child { grid-template-columns:1fr !important; gap:20px !important; }
 .design-home #price article { min-height:0 !important; padding:26px !important; }
 .design-service-row { grid-template-columns:28px minmax(0,1fr) 26px !important; gap:8px 14px !important; padding:18px 0 !important; min-height:0 !important; }
 .design-service-row > span { grid-column:1; grid-row:1; }
 .design-service-row > strong { grid-column:2; grid-row:1; font-size:15px !important; }
 .design-service-row > p { grid-column:2; grid-row:2; font-size:13px !important; }
 .design-service-row > b { grid-column:3; grid-row:1; }
 .design-home section[aria-label="Ключевые цифры"] { grid-template-columns:repeat(2,minmax(0,1fr)) !important; padding:0 !important; }
 .design-home section[aria-label="Ключевые цифры"] > div { min-height:0 !important; padding:24px 18px !important; border-bottom:1px solid #ffffff26; }
 .design-home section[aria-label="Ключевые цифры"] strong { font-size:40px !important; }
 .design-home section[aria-label="Ключевые цифры"] > div > span { font-size:11px !important; }
 .design-home #system article { min-height:0 !important; }
 .design-home #system article h3 { margin-top:16px !important; }
 .design-home aside.design-panel { position:static !important; min-height:0 !important; padding:28px !important; }
 .design-home aside.design-panel > strong { margin-top:36px !important; font-size:76px !important; }
 .design-home #faq summary { padding:20px 0 !important; }
 .design-home #cases .case-teaser { grid-template-columns:30% minmax(0,1fr); }
 .design-home #cases .case-teaser-body { gap:8px; }
 .design-home #cases .case-teaser-metric { font-size:38px !important; }
 .design-home #cases .case-teaser-title { font-size:24px !important; }
 .design-home #cases .case-teaser-note { font-size:12px !important; }
}
@media(max-width:380px) {
 .design-hero h1 { font-size:35px !important; }
 .design-section h2 { font-size:31px !important; }
 .design-hero > div:last-child > div:first-child { letter-spacing:.04em !important; font-size:9px !important; }
}
@media(min-width:761px) {
 .design-home #price article > span:first-child,.design-home #price article > div:first-child { min-height:28px; display:flex; align-items:center !important; }
 .design-home #price article > p { min-height:61px; margin:18px 0 24px !important; }
}
.design-shell { overflow-x:clip !important; }
.interior-nav { position:sticky; top:0; z-index:60; border-bottom:1px solid var(--design-line); }
.interior-nav-row { width:min(1440px,100% - clamp(24px,5vw,64px)); min-height:78px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.interior-desktop-links { display:flex; gap:24px; flex-wrap:wrap; }
.interior-desktop-links a { color:#50475F; font-size:11px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
.interior-desktop-links a[aria-current=page] { color:#5B3EE8; text-decoration:underline; text-underline-offset:6px; }
.interior-nav-cta { display:flex; align-items:center; gap:16px; padding:6px 6px 6px 18px; border:1px solid var(--design-line); border-radius:999px; font-size:12px; font-weight:600; color:#1B1630; white-space:nowrap; }
.interior-nav-cta span { display:grid; place-items:center; width:34px; height:34px; background:#7558FF; color:white; border-radius:50%; }
.interior-mobile-menu { display:none; }
.site-footer-compact { padding-top:0; }
.site-footer-compact .footer-links { border-top:0; }
@media(max-width:900px) {
 .interior-nav-row { min-height:66px; flex-wrap:nowrap !important; }
 .interior-desktop-links,.interior-nav-cta { display:none; }
 .interior-mobile-menu { display:block; }
 .interior-mobile-menu summary { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; width:44px; height:44px; border:1px solid var(--design-line); border-radius:50%; list-style:none; }
 .interior-mobile-menu summary span { width:18px; height:1.5px; background:#1B1630; transition:transform .2s; }
 .interior-mobile-menu[open] summary span:first-child { transform:translateY(3.75px) rotate(45deg); }
 .interior-mobile-menu[open] summary span:last-child { transform:translateY(-3.75px) rotate(-45deg); }
 .interior-mobile-links { position:absolute; top:100%; left:0; right:0; padding:16px 24px 24px; background:#F6F2FF; border-bottom:1px solid var(--design-line); box-shadow:0 16px 24px #1B163010; display:grid; }
 .interior-mobile-links a { padding:15px 0; border-bottom:1px solid var(--design-line); color:#1B1630; font-size:15px; }
 .interior-mobile-links a[aria-current=page] { color:#5B3EE8; }
 .interior-mobile-links .interior-mobile-cta { margin-top:18px; border:0; border-radius:8px; padding:16px; background:#7558FF; color:white; }
}
@media(max-width:600px) {
 .design-form-columns { grid-template-columns:1fr !important; }
 .design-interior header { padding-top:32px !important; padding-bottom:40px !important; }
 .design-interior section { padding-top:40px !important; padding-bottom:40px !important; }
 .design-interior footer { padding-top:0; }
}
@media(max-width:760px) {
 .design-interior section[aria-label="Ключевые параметры"],.design-interior section[aria-label="Ключевые цифры"] { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; padding:0 !important; }
 .design-interior section[aria-label="Ключевые параметры"] > div,.design-interior section[aria-label="Ключевые цифры"] > div { min-height:0 !important; padding:24px 16px !important; border-bottom:1px solid #ffffff26; }
 .design-interior section[aria-label="Ключевые параметры"] strong,.design-interior section[aria-label="Ключевые цифры"] strong { font-size:clamp(25px,7vw,34px) !important; }
 .design-interior section[aria-label="Ключевые параметры"] > div > span,.design-interior section[aria-label="Ключевые цифры"] > div > span { font-size:10px !important; letter-spacing:.05em !important; }
}
@media(max-width:760px) {
 .design-interior section:is([aria-label="Параметры услуги"],[aria-label="Охват"],[aria-label="Условия"]) { grid-template-columns:repeat(2,minmax(0,1fr)) !important; padding:0 !important; }
 .design-interior section:is([aria-label="Параметры услуги"],[aria-label="Охват"],[aria-label="Условия"]) > div { min-height:0 !important; padding:24px 16px !important; border-bottom:1px solid #ffffff26; }
 .design-interior section:is([aria-label="Параметры услуги"],[aria-label="Охват"],[aria-label="Условия"]) strong { font-size:clamp(25px,7vw,34px) !important; }
 .design-interior section:is([aria-label="Параметры услуги"],[aria-label="Охват"],[aria-label="Условия"]) > div > span { font-size:10px !important; letter-spacing:.05em !important; }
}

.breadcrumbs li + li::before { content:"→"; margin-right:8px; opacity:.6; }
