/* Movectus / Concept 03 shared design system. Intentionally loaded after the legacy CSS.
   Preserve the original PHP auth, chat, support, billing and admin DOM/behavior. */
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:DMSans;src:url('/assets/fonts/dm-sans-latin.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}
:root{--m3-bg:#111014;--m3-bg-2:#19171e;--m3-paper:#f4f1eb;--m3-ink:#111014;--m3-purple:#bea4ff;--m3-line:rgba(244,241,235,.18);--m3-gutter:clamp(22px,5vw,88px)}
html{scroll-padding-top:88px} body{font-family:DMSans,'DM Sans',Arial,sans-serif} :focus-visible{outline:3px solid var(--m3-purple);outline-offset:4px}
/* chat: real existing message system, moved to requested bottom left */
.movectus-chat-launcher{left:max(20px,env(safe-area-inset-left))!important;right:auto!important;bottom:max(20px,env(safe-area-inset-bottom));border-radius:50%!important;background:#bea4ff!important;color:#181320!important;border:1px solid #d6c4ff!important;box-shadow:0 14px 50px rgba(0,0,0,.3)!important}
.movectus-chat-panel{left:max(20px,env(safe-area-inset-left))!important;right:auto!important;bottom:90px!important;border:1px solid #584d65!important;background:#211a2d!important;color:#f4f1eb!important}
.m3-chat-fallback{position:fixed;z-index:169;bottom:max(20px,env(safe-area-inset-bottom));left:max(20px,env(safe-area-inset-left));background:#bea4ff;color:#181320;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-size:24px;box-shadow:0 14px 50px rgba(0,0,0,.27);transition:transform .2s}
.m3-chat-fallback:hover{transform:translateY(-4px)} .m3-chat-ready .m3-chat-fallback{display:none}
.m3-footer-links{border-top:1px solid rgba(244,241,235,.16);padding-block:45px;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}
.m3-footer-links>div{display:flex;flex-direction:column;gap:12px}.m3-footer-links strong{font-size:12px;color:#bea4ff;text-transform:uppercase;letter-spacing:.12em;margin-bottom:9px}.m3-footer-links a{color:#bfb7c4;font-size:14px}.m3-footer-links a:hover{color:#fff}
.m3-home .nav-links a[data-public-login]{color:#fff}.m3-home .nav-links a[data-public-login]:hover{color:#bea4ff}
.m3-home .hero .hero-tag{font-size:11px}
.m3-home .price-card .btn{width:100%;justify-content:space-between}
.m3-home .price-note{max-width:1060px}.m3-home .hero-actions .btn{white-space:normal}
/* Public pages built on the existing, proven markup */
body.studio-site:not(.m3-home){background:var(--m3-bg);color:#f4f1eb;--purple:#bea4ff;--text:#f4f1eb;--text-2:#ded6e4;--muted:#ada3b3;--line:rgba(244,241,235,.18);}
body.studio-site:not(.m3-home) :is(.v930-page-hero,.v930-dark){background:#111014!important;color:#f4f1eb!important}
body.studio-site:not(.m3-home) .v930-page-hero{position:relative;padding-block:clamp(135px,14vw,235px) clamp(95px,10vw,160px)!important;overflow:hidden;background:radial-gradient(ellipse at 94% 17%,rgba(116,79,165,.19),transparent 43%),linear-gradient(180deg,#111014,#17131b)!important;border-bottom:1px solid rgba(244,241,235,.18)}
body.studio-site:not(.m3-home) .v930-page-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.13;background-image:linear-gradient(90deg,#827689 1px,transparent 1px),linear-gradient(0deg,#827689 1px,transparent 1px);background-size:110px 110px;mask-image:linear-gradient(to bottom,transparent 0%,black 100%)}
body.studio-site:not(.m3-home) .v930-page-hero .container{position:relative;z-index:1}
body.studio-site:not(.m3-home) .container{max-width:1600px;padding-inline:var(--m3-gutter)}
body.studio-site:not(.m3-home) .v930-page-hero h1{font-family:Manrope,Arial,sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:-.077em;line-height:.98;font-size:clamp(49px,7.4vw,116px);max-width:1180px;margin-block:26px 32px;color:#f4f1eb}
body.studio-site:not(.m3-home) .v930-page-hero p{max-width:750px;font-size:clamp(16px,1.32vw,20px);line-height:1.6;color:#c4bbc9}
body.studio-site:not(.m3-home) .v930-kicker{letter-spacing:.15em;text-transform:uppercase;font-size:11px;font-weight:800;color:#9d84ce}
body.studio-site:not(.m3-home) .v930-page-hero .v930-kicker{color:#bea4ff}
body.studio-site:not(.m3-home) .v930-section{padding-block:clamp(90px,9vw,165px)!important}
body.studio-site:not(.m3-home) .v930-paper{background:#f4f1eb!important;color:#17121d!important}
body.studio-site:not(.m3-home) .v930-paper :is(h1,h2,h3,h4,strong){color:#17121d}
body.studio-site:not(.m3-home) .v930-paper p{color:#615968}
body.studio-site:not(.m3-home) .v930-paper .v930-kicker{color:#8665af}
body.studio-site:not(.m3-home) .v930-dark :is(h1,h2,h3,strong){color:#f4f1eb}
body.studio-site:not(.m3-home) .v930-dark p{color:#c7bdcf}
body.studio-site:not(.m3-home) :is(.v930-split-head h2,.v930-final-card h2,.v930-section h2){font-family:Manrope,Arial,sans-serif;letter-spacing:-.065em;line-height:1.09;font-weight:800}
body.studio-site:not(.m3-home) .v930-split-head h2{font-size:clamp(38px,4.6vw,76px)}
body.studio-site:not(.m3-home) .v930-section h2{font-size:clamp(34px,4.6vw,76px)}
/* Unified header and footer. Keep original login, account and mobile nav hooks. */
body.studio-site:not(.m3-home) .site-header{position:sticky!important;top:0;z-index:101;background:rgba(17,16,20,.97)!important;border-bottom:1px solid rgba(244,241,235,.15)!important;box-shadow:none!important;backdrop-filter:blur(12px);color:#f4f1eb!important}
body.studio-site:not(.m3-home) .site-header .header-inner{max-width:none;padding-inline:var(--m3-gutter);min-height:85px}
body.studio-site:not(.m3-home) .site-header .brand{font:800 23px/1.1 Manrope,Arial,sans-serif;letter-spacing:-.045em;color:#f4f1eb!important}
body.studio-site:not(.m3-home) .site-header .brand img{width:40px;height:40px;object-fit:contain}
body.studio-site:not(.m3-home) .site-header .nav a{font-size:13px;font-weight:750;color:#c8c0cc!important}
body.studio-site:not(.m3-home) .site-header .nav a:hover{color:#bea4ff!important}
body.studio-site:not(.m3-home) .site-header .button-primary{border-radius:999px!important;background:#bea4ff!important;color:#1a1423!important;padding:14px 20px!important;border:1px solid #bea4ff!important;font-weight:800}
body.studio-site:not(.m3-home) .site-header .button-quiet{color:#f4f1eb!important;background:transparent!important;border:0!important}
body.studio-site:not(.m3-home) .site-header .mobile-menu-button{color:#f4f1eb;border:1px solid rgba(244,241,235,.28)!important}
body.studio-site:not(.m3-home) .site-header .mobile-nav{background:#1e1823!important;color:#f4f1eb!important;border:1px solid #4d405b!important}
body.studio-site:not(.m3-home) .site-header .mobile-nav a{color:#f4f1eb!important}
body.studio-site:not(.m3-home) .site-footer{background:#151219!important;color:#e6dfeb!important;border-top:1px solid rgba(244,241,235,.17)!important}
body.studio-site:not(.m3-home) .site-footer .container{padding-block:66px 30px}
body.studio-site:not(.m3-home) .site-footer .brand{font:800 24px Manrope;color:#fff;letter-spacing:-.05em}
body.studio-site:not(.m3-home) .site-footer .brand img{width:42px;height:42px}
body.studio-site:not(.m3-home) .site-footer strong{color:#bea4ff!important;font-size:12px;letter-spacing:.13em;text-transform:uppercase}
body.studio-site:not(.m3-home) .site-footer a{color:#e4dce9!important}body.studio-site:not(.m3-home) .site-footer a:hover{color:#bea4ff!important}
body.studio-site:not(.m3-home) .site-footer p,body.studio-site:not(.m3-home) .site-footer span{color:#aaa2b0!important}
/* Papers, cards, examples, FAQ and pricing */
body.studio-site:not(.m3-home) :is(.v930-benefits-grid article,.v930-work-card,.v930-price-card,.contact-studio-copy,.studio-contact-form){border-radius:18px!important;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
body.studio-site:not(.m3-home) :is(.v930-benefits-grid article,.v930-work-card,.v930-price-card):hover{transform:translateY(-5px)}
body.studio-site:not(.m3-home) .v930-paper .v930-benefits-grid article{background:#ece7ea!important;border:1px solid #d8d0dd!important;color:#241c2c!important;padding:35px}
body.studio-site:not(.m3-home) .v930-paper .v930-benefits-grid article h3{font-family:Manrope;font-size:clamp(21px,2.3vw,31px);font-weight:800;letter-spacing:-.04em}
body.studio-site:not(.m3-home) .v930-paper .v930-work-card{background:#e6e0e7!important;border:1px solid #d3c8d6!important;overflow:hidden}
body.studio-site:not(.m3-home) .v930-work-meta{padding:18px 22px}
body.studio-site:not(.m3-home) .v930-paper a:not(.button){color:#644296}
body.studio-site:not(.m3-home) .v930-price-card{background:#231e29!important;color:#f4f1eb!important;border:1px solid #4a4150!important;padding:clamp(24px,2.7vw,45px)!important;display:flex;flex-direction:column;align-items:stretch}
body.studio-site:not(.m3-home) .v930-price-card.v930-price-featured{background:#32273d!important;border-color:#bea4ff!important;box-shadow:0 16px 60px rgba(97,63,134,.13)}
body.studio-site:not(.m3-home) .v930-price-card :is(h3,strong){color:#f4f1eb!important}
body.studio-site:not(.m3-home) .v930-price-card h3{font:800 clamp(21px,2.2vw,28px) Manrope;letter-spacing:-.04em}
body.studio-site:not(.m3-home) .v930-price-card .v930-price strong{font:800 clamp(47px,4.7vw,80px) Manrope;letter-spacing:-.065em}
body.studio-site:not(.m3-home) .v930-price-card :is(p,li,.v930-price-renewal,.v930-price-top span){color:#ddd4e2!important}
body.studio-site:not(.m3-home) .v930-price-card :is(.button, a.button){margin-top:auto;border-radius:100px!important;min-height:55px;display:flex;justify-content:space-between;align-items:center;padding-inline:20px!important;font-weight:800;font-size:14px}
body.studio-site:not(.m3-home) .v930-price-card .button-primary{background:#bea4ff!important;color:#201829!important}
body.studio-site:not(.m3-home) .v930-price-card .button-secondary{background:transparent!important;color:#f4f1eb!important;border:1px solid #82708c!important}
body.studio-site:not(.m3-home) .v930-price-card .v930-intro-offer{color:#bea4ff!important}
body.studio-site:not(.m3-home) .v930-pricing-note,body.studio-site:not(.m3-home) .trust-currency-note{color:#b8aebf!important;line-height:1.65}
.m3-checkout-disclosure{border:1px solid #665278;border-radius:14px;padding:17px 22px;margin:0 0 28px!important;background:#292232;color:#ebe2f2!important;font-size:15px;line-height:1.6}
body.studio-site:not(.m3-home) :is(.button-primary,.button-secondary){border-radius:999px;font-weight:800;transition:transform .22s,background .22s}
body.studio-site:not(.m3-home) .button-primary:hover{transform:translateY(-3px)}
body.studio-site:not(.m3-home) .v930-dark .v930-final-card{border:1px solid #665676!important;background:#2b2235!important;border-radius:22px!important;padding:clamp(30px,5vw,70px)}
body.studio-site:not(.m3-home) .v930-dark .v930-final-card .button-primary{background:#bea4ff!important;color:#1a1520!important}
body.studio-site:not(.m3-home) .v930-paper .v930-legal{max-width:950px}
body.studio-site:not(.m3-home) .v930-paper .v930-legal h2{font-size:clamp(25px,2.8vw,37px);line-height:1.25;margin-top:55px}
body.studio-site:not(.m3-home) .v930-paper .v930-legal p{font-size:16px;line-height:1.8}
/* Public contact forms: keep PHP fields and anti-spam protections untouched */
body.studio-site:not(.m3-home) .contact-studio-copy{background:#e9e3ed;color:#1d1823;border:1px solid #d9d0df;padding:clamp(24px,3vw,50px)}
body.studio-site:not(.m3-home) .contact-studio-copy :is(h2,strong){color:#211828}
body.studio-site:not(.m3-home) .contact-studio-copy p{color:#5a505f}
body.studio-site:not(.m3-home) .studio-contact-form{background:#fff!important;border:1px solid #d9d0df!important;color:#211828;padding:clamp(24px,3vw,50px)!important;box-shadow:0 17px 55px rgba(20,15,25,.08)}
body.studio-site:not(.m3-home) .studio-contact-form :is(label,small){color:#292132!important}
body.studio-site:not(.m3-home) .studio-contact-form :is(input,textarea,select){background:#f9f7fa!important;color:#211828!important;border:1px solid #cbc1d0!important;border-radius:10px;padding:15px 14px}
body.studio-site:not(.m3-home) .studio-contact-form :is(input,textarea,select):focus{border-color:#76539b!important;outline:2px solid #76539b}
body.studio-site:not(.m3-home) .studio-contact-form .button-primary{background:#281d30!important;color:#f4f1eb!important;padding:17px 30px!important}
/* Logged-in account and administration: readable, stylistically consistent, no functional markup changes */
body:is(.auth-page,.app-page,.admin-page,.owner-page,.editor-page){--bg:#111014;--bg-2:#19171e;--surface:#231e29;--surface-2:#2b2532;--surface-3:#332a3d;--text:#f4f1eb;--text-2:#ded6e4;--muted:#b1a7b9;--line:rgba(244,241,235,.17);--line-strong:rgba(244,241,235,.27);--purple:#bea4ff;--purple-2:#ad8cef;background:#111014!important;color:#f4f1eb!important}
body:is(.auth-page,.app-page,.admin-page,.owner-page,.editor-page) :is(h1,h2,h3,h4){font-family:Manrope,'Manrope',sans-serif;letter-spacing:-.045em;color:#f4f1eb}
body.auth-page .auth-side{background:radial-gradient(ellipse at 70% 60%,rgba(164,123,215,.20),transparent 55%),#19141f!important;border-right:1px solid #4b4150}
body.auth-page .auth-side h1{font:800 clamp(40px,5.6vw,88px)/1 Manrope;text-transform:uppercase;letter-spacing:-.075em}
body.auth-page .auth-side .brand{font-family:Manrope;font-weight:800;font-size:22px}
body.auth-page .auth-side .brand img{width:52px;height:52px;object-fit:contain}
body.auth-page .auth-card{border:1px solid #53445f!important;border-radius:22px!important;background:#211b27!important;box-shadow:0 24px 80px rgba(0,0,0,.17)}
body.auth-page .auth-card h2{font:800 clamp(35px,3.8vw,56px) Manrope;letter-spacing:-.06em}
body.auth-page .auth-main{background:#111014!important}
body.auth-page .auth-form-card input,body.auth-page .auth-form-card select{background:#17131c!important;border-color:#54485d!important;color:#fff!important;border-radius:10px}
body.auth-page .button-primary{background:#bea4ff!important;color:#1d1426!important;border-radius:999px!important;border-color:#bea4ff!important;font-weight:800}
body.app-page :is(.app-header,.sidebar){background:#18141d!important;border-color:#3f3646!important}
body.app-page .sidebar a.active{background:#362940!important;color:#eadbff!important}
body.app-page .app-main{background:#111014!important}
body.app-page :is(.app-card,.stat-card,.dashboard-card,.workspace-card){background:#211c27!important;border:1px solid #413747!important;border-radius:17px!important}
body.app-page .button-primary{background:#bea4ff!important;color:#1a1423!important;border-radius:999px!important;font-weight:800}
body.app-page .workspace-head h1{font:800 clamp(39px,5vw,67px)/1.05 Manrope;text-transform:uppercase;letter-spacing:-.06em}
body.app-page :is(input,textarea,select){border-radius:10px}
@media(max-width:1050px){body.studio-site:not(.m3-home) .site-header .header-inner{min-height:72px}.m3-home .nav-links{gap:14px}}
@media(max-width:780px){.m3-footer-links{grid-template-columns:repeat(2,1fr)}body.studio-site:not(.m3-home) .v930-page-hero{padding-top:105px!important}body.studio-site:not(.m3-home) .v930-page-hero h1{font-size:clamp(43px,9vw,67px)}}
@media(max-width:480px){.m3-footer-links{grid-template-columns:1fr;gap:25px}.m3-footer-links>div{gap:9px}.movectus-chat-panel{left:12px!important;right:12px!important;max-width:calc(100vw - 24px)!important}.m3-home .nav{padding-inline:22px}}
@media(prefers-reduced-motion:reduce){body.studio-site:not(.m3-home) :is(.v930-benefits-grid article,.v930-work-card,.v930-price-card):hover{transform:none}.m3-chat-fallback{transition:none}}
