/* Veyora enterprise design system — shared by marketing, product and workspace surfaces. */
:root{
  --veyora-ink:#123b32;
  --veyora-forest:#0e2f29;
  --veyora-moss:#426a55;
  --veyora-sage:#9fbd8c;
  --veyora-lime:#dff2ad;
  --veyora-paper:#fbfcf8;
  --veyora-cloud:#f2f5ef;
  --veyora-line:#dfe7dc;
  --veyora-text:#183d33;
  --veyora-muted:#63776b;
  --veyora-shadow:0 24px 70px rgba(18,59,50,.11);
}

/* Shared marketing chrome */
body{background:var(--veyora-paper);color:var(--veyora-text)}
.header{background:#000000;border-bottom:1px solid rgba(18,59,50,.11);box-shadow:0 5px 25px rgba(18,59,50,.04)}
.nav{min-height:82px}
.wordmark{font-size:32px;letter-spacing:-1.9px;color:var(--veyora-ink)}
.brand-icon{filter:drop-shadow(0 4px 7px rgba(18,59,50,.15))}
.desktop-nav{gap:34px}
.desktop-nav a{position:relative;font-size:13px;font-weight:600;color:#50675b}
.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:#000000;transition:right .25s ease}
.desktop-nav a:hover:after{right:0}
.button{border-radius:10px;font-weight:650;letter-spacing:-.1px;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.button:hover{transform:translateY(-3px);box-shadow:0 12px 25px rgba(18,59,50,.14)}
.button-dark{background:#000000}
.button-lime{background:#000000}
.eyebrow{letter-spacing:2px;color:#668368}
.section{padding-block:132px}
.section-heading{margin-bottom:54px;align-items:flex-end}
.section-heading h2,h2{font-size:clamp(42px,4.3vw,64px);letter-spacing:-3px;line-height:1.04}
.section-heading>p{max-width:390px;font-size:14px;line-height:1.9;color:#62786a}

/* Home hero: editorial enterprise narrative + generated artwork. */
.product-announcement{justify-content:flex-start;padding:12px max(28px,calc((100% - 1320px)/2));font-size:11px;letter-spacing:.01em;background:#000000;border-bottom:1px solid #dae8cf}
.hero{min-height:760px;grid-template-columns:1fr 1fr;gap:56px;padding-block:108px 125px}
.hero-copy{max-width:640px}
.hero .eyebrow{font-size:10px}
.hero h1{font-size:clamp(64px,6.7vw,100px);letter-spacing:-6px;line-height:.96;margin:31px 0 31px;max-width:560px}
.hero-description{max-width:520px;font-size:17px;line-height:1.85;color:#5f7569}
.hero-actions{gap:28px}
.hero-footnote{font-size:10px;margin-top:35px}
.hero-visual{min-height:500px;padding:35px 0 40px}
.hero-visual:before{inset:-70px -55px -40px -45px;background:#000000}
.hero-visual:after{content:"";position:absolute;z-index:-1;inset:4% -9% -13% -15%;background:url('/shared/veyora-orbit.png') center/contain no-repeat;opacity:.24;mix-blend-mode:multiply;animation:orbit-drift 14s ease-in-out infinite alternate}
.visual-orbit{opacity:.55}
/* The 3D tilt belongs to marketing previews, not application workspaces. */
.workspace:not(.crm-workspace){min-height:420px;border-radius:18px;border-color:#ccdaca;box-shadow:var(--veyora-shadow);transform:perspective(1400px) rotateY(-4deg) rotateX(2deg)}
.ai-toast{border-radius:14px;padding:19px 20px;box-shadow:0 16px 35px rgba(18,59,50,.14);animation:float-card 5s ease-in-out infinite}
.stack-strip{background:#000000;color:#e9f2e2;border:0;padding-block:26px 19px}
.stack-inner p{color:#b5ccb6;border-right-color:#33584a}
.stack-inner p strong{color:#e7f2ce}
.stack-names{color:#b8cfba}
.stack-names>span{font-size:18px}
.stack-note{color:#91ad96}

/* New enterprise proof and operating-model bands. */
.enterprise-proof-band{background:#000000;color:#f5f8eb;padding:30px 0;border-bottom:1px solid #224a3c}
.enterprise-proof-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:18px;align-items:stretch}
.enterprise-proof-intro{padding:8px 26px 8px 0;border-right:1px solid rgba(224,242,173,.18)}
.enterprise-proof-intro .eyebrow{color:#a9c997;font-size:9px}
.enterprise-proof-intro h2{font-size:25px;line-height:1.18;letter-spacing:-1px;margin:12px 0 0}
.enterprise-metric{padding:8px 14px;border-right:1px solid rgba(224,242,173,.15)}
.enterprise-metric:last-child{border-right:0}
.enterprise-metric strong{display:block;font-size:31px;letter-spacing:-1.8px;color:var(--veyora-lime)}
.enterprise-metric span{display:block;font-size:10px;line-height:1.5;color:#afc9b0;margin-top:7px}
.platform-section{background:#000000;border-top:1px solid #e0e8dc;border-bottom:1px solid #e0e8dc;padding:120px 0}
.platform-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}
.platform-copy h2{max-width:540px;margin-top:19px}
.platform-copy>p{font-size:15px;line-height:1.9;color:#60776a;max-width:510px;margin:25px 0}
.platform-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.platform-step{min-height:170px;padding:25px;border:1px solid #d7e3d4;background:#ffffff;border-radius:14px;position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.platform-step:hover{transform:translateY(-6px);box-shadow:0 14px 35px rgba(18,59,50,.1)}
.platform-step:after{content:"";position:absolute;width:92px;height:92px;border:1px solid #c7dabd;border-radius:50%;right:-42px;bottom:-48px}
.platform-step span{font-size:10px;letter-spacing:1.6px;color:#789472}
.platform-step h3{font-size:20px;line-height:1.15;margin:21px 0 9px;letter-spacing:-.7px}
.platform-step p{font-size:12px;line-height:1.7;color:#708576;margin:0}

/* Products and solutions portfolio. */
.product-family-section{padding-top:126px;padding-bottom:118px;background:#000000}
.product-family-section .section-heading h2{max-width:580px}
.product-family-section .section-heading>p{font-size:14px}
.manufacturing-product-card{gap:95px;padding:56px 60px;margin-top:18px;border-radius:20px;border-color:#d2e0cc;background:#000000;box-shadow:0 12px 35px rgba(49,84,53,.06);transition:transform .28s ease,box-shadow .28s ease}
.manufacturing-product-card:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(49,84,53,.12)}
.manufacturing-product-card:nth-of-type(3n){background:#000000;border-color:#e1ddc9}
.manufacturing-product-card:nth-of-type(4n){background:#000000;border-color:#d7e4e7}
.manufacturing-product-card h3{font-size:clamp(37px,4vw,59px);letter-spacing:-2.8px;line-height:.99;margin:25px 0 21px}
.manufacturing-product-card p{font-size:15px;line-height:1.9;max-width:535px;color:#5d7461}
.product-card-flow{padding:29px;border-radius:15px;background:#000000;border-color:#d7e4cf;box-shadow:0 14px 30px rgba(32,64,43,.06)}
.product-card-flow>span{font-size:9px;padding-bottom:34px}
.product-card-flow strong{font-size:14px}
.product-card-flow small{font-size:10px;line-height:1.75}
.solutions-grid{grid-template-columns:1.2fr 1fr 1fr;gap:18px}
.solution-card{min-height:380px;padding:34px 31px;border-radius:16px;border-color:#d9e4d9;box-shadow:0 10px 30px rgba(22,55,39,.05);transition:transform .25s ease,box-shadow .25s ease}
.solution-card:hover{transform:translateY(-7px);box-shadow:0 18px 40px rgba(22,55,39,.11)}
.solution-card.feature-card{background:#000000}
.solution-card h3{font-size:27px;letter-spacing:-1.1px}
.solution-card p{font-size:14px;line-height:1.85;color:#60776a}
.workflow-mini{font-size:7px;padding-top:16px}

/* Dark interaction panel and services. */
.playground-section{padding:132px 0;background:#000000;position:relative;overflow:hidden}
.playground-section:after{content:"";position:absolute;right:-14%;top:-45%;width:650px;height:650px;border:1px solid rgba(223,242,173,.15);border-radius:50%;box-shadow:0 0 0 90px rgba(223,242,173,.04),0 0 0 180px rgba(223,242,173,.025);pointer-events:none}
.playground-layout{gap:120px}
.playground-copy h2{font-size:clamp(44px,5vw,70px)}
.scenario-display{border-radius:18px;box-shadow:0 25px 65px rgba(0,0,0,.22)}
.services-list{border-top:1px solid #cfdccc}
.service-row{gap:32px;padding:36px 0;transition:padding .25s ease}
.service-row:hover{padding-left:12px;padding-right:12px;background:#000000}
.service-number{font-size:12px;color:#789474}
.service-row h3{font-size:24px;letter-spacing:-.8px}
.service-row p{font-size:13px;line-height:1.8;color:#62786b}
.service-tags span{font-size:9px;padding:8px 11px;background:#000000;border-color:#d9e5d3}
.round-button{width:44px;height:44px}
.process-section{padding:132px 0;background:#000000}
.process-grid{gap:42px;margin-top:68px}
.process-grid article{padding:27px;border:1px solid #d7e3d2;background:#000000;border-radius:15px;transition:transform .25s ease,background .25s ease}
.process-grid article:hover{transform:translateY(-5px);background:#ffffff}
.process-grid h3{font-size:28px;letter-spacing:-1px}
.process-grid p{font-size:13px;line-height:1.85;color:#657a6c}

/* Governance, company, FAQ and CTA. */
.governance-section{padding:120px 0;background:#000000;color:#f4f8ec}
.governance-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px;align-items:start}
.governance-copy h2{font-size:clamp(42px,4.2vw,64px);margin-top:20px}
.governance-copy p{font-size:14px;line-height:1.9;color:#b3cdb8;max-width:410px}
.governance-copy .eyebrow{color:#a6c792}
.governance-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.governance-card{padding:25px;border:1px solid rgba(223,242,173,.18);border-radius:14px;background:#000000}
.governance-card strong{font-size:18px;letter-spacing:-.5px}
.governance-card p{font-size:12px;line-height:1.75;color:#a8c5ad;margin:10px 0 0}
.company-section{gap:105px}
.company-art{min-height:460px;border-radius:20px;box-shadow:var(--veyora-shadow);overflow:hidden}
.company-art:after{content:"";position:absolute;inset:0;background:url('/shared/veyora-orbit.png') center/130% auto no-repeat;opacity:.11;mix-blend-mode:multiply;animation:orbit-drift 18s ease-in-out infinite alternate;pointer-events:none}
.company-copy h2{font-size:clamp(46px,4.7vw,68px);letter-spacing:-3px}
.company-copy p{font-size:14px;line-height:1.9;color:#62776a}
.company-principles{gap:16px;margin-top:31px;font-size:12px}
.faq-section{gap:100px;padding-top:38px}
.faq-section h2{font-size:clamp(42px,4.2vw,62px)}
summary{font-size:15px;padding:26px 0}
details p{font-size:13px;line-height:1.9;color:#63786b}
.cta-section{border-radius:22px;padding:86px 80px;margin-bottom:92px;box-shadow:var(--veyora-shadow)}
.cta-section h2{font-size:clamp(50px,5.7vw,82px);letter-spacing:-4px}
.cta-section p{font-size:14px;color:#bfd3be;line-height:1.9}
.cta-orbit{font-size:430px;opacity:.65}
.footer-top{padding-bottom:35px}
.footer-bottom{font-size:10px}

/* Solution marketing pages. Every product shares this elevated shell. */
body:has(.product-hero) header{padding:21px max(24px,calc((100% - 1320px)/2));min-height:78px;background:#000000;position:sticky;top:0;z-index:20;box-shadow:0 5px 25px rgba(18,59,50,.05)}
body:has(.product-hero) .product-nav{display:flex;gap:28px;align-items:center;flex-wrap:wrap;font-size:12px;font-weight:650;color:#567165}
body:has(.product-hero) .product-nav a{transition:color .2s ease}
body:has(.product-hero) .product-nav a:hover{color:var(--veyora-ink)}
body:has(.product-hero) .product-hero{max-width:1320px;padding:124px max(24px,4vw) 112px;gap:75px;min-height:690px;position:relative}
body:has(.product-hero) .product-hero:before{content:"";position:absolute;z-index:-1;inset:7% -5% -8%;background:url('/shared/veyora-orbit.png') 88% 50%/60% auto no-repeat;opacity:.08;pointer-events:none}
body:has(.product-hero) .product-hero h1{font-size:clamp(52px,6.5vw,94px);letter-spacing:-5px;line-height:.98}
body:has(.product-hero) .product-intro{font-size:17px;line-height:1.9;max-width:560px}
body:has(.product-hero) .factory-preview,body:has(.product-hero) .preview,body:has(.product-hero) .mock{border-radius:23px;box-shadow:var(--veyora-shadow);transform:translateY(0);animation:float-card 7s ease-in-out infinite}
body:has(.product-hero) .product-band{padding:23px 0;border-block:1px solid rgba(18,59,50,.1);background:#000000}
body:has(.product-hero) .section{padding-block:125px}
body:has(.product-hero) .section h2{font-size:clamp(42px,4.4vw,64px);letter-spacing:-3px}
body:has(.product-hero) .module-grid,body:has(.product-hero) .cards,body:has(.product-hero) .package-grid{gap:18px}
body:has(.product-hero) .module-grid article,body:has(.product-hero) .card,body:has(.product-hero) .package-grid>article{border-radius:16px;box-shadow:0 10px 28px rgba(18,59,50,.05);transition:transform .25s ease,box-shadow .25s ease}
body:has(.product-hero) .module-grid article:hover,body:has(.product-hero) .card:hover,body:has(.product-hero) .package-grid>article:hover{transform:translateY(-6px);box-shadow:0 18px 42px rgba(18,59,50,.1)}
body:has(.product-hero) .product-access{padding:126px 0;background:#000000;color:#f3f7ed}
body:has(.product-hero) .product-access h2{font-size:clamp(45px,4.5vw,68px);letter-spacing:-3px}
body:has(.product-hero) .product-access p{font-size:14px;line-height:1.9;color:#b9d0bc}
body:has(.product-hero) .access-points article{border-color:rgba(223,242,173,.18);padding:22px 0}
body:has(.product-hero) .final{border-radius:22px;box-shadow:var(--veyora-shadow);padding:78px}
body:has(.product-hero) footer{padding:40px max(24px,6vw);background:#000000}

/* Shared portal / customer workspace surface. */
body:has(.app-layout),body:has(.shell){background:#000000}
body:has(.app-layout) .sidebar,body:has(.shell) .sidebar{background:#000000;box-shadow:10px 0 35px rgba(18,59,50,.12)}
body:has(.app-layout) .topbar,body:has(.shell) .topbar{height:78px;background:#000000;border-bottom:1px solid #dce8df;box-shadow:0 4px 20px rgba(18,59,50,.04)}
body:has(.app-layout) .main,body:has(.shell) .main{padding:43px 46px 72px}
body:has(.app-layout) .page-heading,body:has(.shell) .page-head{margin-bottom:32px}
body:has(.app-layout) .page-heading h1,body:has(.shell) .page-head h1{font-size:clamp(30px,3vw,48px);letter-spacing:-2px}
body:has(.app-layout) .metric-card,body:has(.shell) .metric{border-radius:15px;border-color:#dce8df;box-shadow:0 10px 24px rgba(18,59,50,.05);transition:transform .22s ease,box-shadow .22s ease}
body:has(.app-layout) .metric-card:hover,body:has(.shell) .metric:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(18,59,50,.1)}
body:has(.app-layout) .panel,body:has(.shell) .panel{border-radius:15px;border-color:#dce8df;box-shadow:0 10px 25px rgba(18,59,50,.045)}
body:has(.app-layout) .panel-header,body:has(.shell) .panel-h{padding:22px 24px}
body:has(.app-layout) .btn-primary,body:has(.shell) .btn.primary{background:#000000;border-color:#ffffff!important}
body:has(.app-layout) .nav-item.active,body:has(.shell) .nav a.active{background:#000000;color:#e8f4cb}
body:has(.app-layout) .auth-story,body:has(.auth) .auth-art{background:#000000;position:relative;overflow:hidden}
body:has(.app-layout) .auth-story:after,body:has(.auth) .auth-art:after{content:"";position:absolute;inset:auto -20% -20% auto;width:600px;height:600px;background:url('/shared/veyora-orbit.png') center/contain no-repeat;opacity:.15;pointer-events:none}
body:has(.app-layout) .auth-card,body:has(.auth) .auth-box{position:relative;z-index:1}
body:has(.app-layout) .auth-main,body:has(.auth) .auth-main{background:#000000}
body:has(.app-layout) .auth-card h2,body:has(.auth) .auth-box h2{font-size:clamp(30px,3.2vw,44px);letter-spacing:-2px}
body:has(.app-layout) .auth-card form input,body:has(.auth) .form-stack input{border-radius:10px;border-color:#d4e3d9;min-height:46px}
body:has(.app-layout) .loading-screen,body:has(.auth) .loading{background:#000000}

/* Motion is purposeful and can be disabled for accessibility. */
@keyframes float-card{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes orbit-drift{0%{transform:translate3d(0,0,0) rotate(-2deg)}100%{transform:translate3d(14px,-7px,0) rotate(2deg)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}

@media(max-width:900px){
  .hero{grid-template-columns:1fr;gap:25px;padding-top:80px}
  .hero-copy{max-width:760px}.hero-visual{max-width:780px;margin-inline:auto;width:100%}
  .enterprise-proof-grid{grid-template-columns:1fr repeat(4,1fr)}.enterprise-proof-intro{grid-column:1/-1;border-right:0;border-bottom:1px solid rgba(224,242,173,.18);padding-bottom:18px}
  .platform-layout,.governance-layout{grid-template-columns:1fr;gap:45px}.platform-copy>p{max-width:670px}
  .manufacturing-product-card{grid-template-columns:1fr;gap:35px}.product-card-flow{max-width:680px}
  .playground-layout{grid-template-columns:1fr;gap:50px}.playground-copy>p{max-width:590px}
  .company-section{grid-template-columns:1fr;gap:55px}.company-art{max-width:730px}
}
@media (min-width:901px) and (max-width:1100px){
  .hero{grid-template-columns:.95fr 1.05fr;gap:34px}
  .hero h1{font-size:clamp(56px,6.7vw,76px);letter-spacing:-4px}
  .hero-description{font-size:14px}
}
@media(max-width:680px){
  .container{width:min(100% - 34px,1240px)}.nav{min-height:72px}.wordmark{font-size:28px}.desktop-nav,.nav-cta{display:none}.menu-toggle{display:block}
  .section{padding-block:84px}.section-heading{display:block;margin-bottom:36px}.section-heading>p{margin-top:20px}
  .hero{padding-block:65px 100px}.hero h1{font-size:clamp(56px,16vw,82px);letter-spacing:-5px}.hero-description{font-size:15px}.hero-actions{flex-wrap:wrap}.hero-visual{min-height:370px;padding-top:20px}.workspace:not(.crm-workspace){min-height:320px}.ai-toast{left:4%;right:-5%;padding:14px}.visual-caption{font-size:6px}
  .enterprise-proof-band{padding-block:22px}.enterprise-proof-grid{grid-template-columns:repeat(2,1fr);gap:0}.enterprise-proof-intro{grid-column:1/-1}.enterprise-metric{padding:15px 11px;border-bottom:1px solid rgba(224,242,173,.15)}.enterprise-metric strong{font-size:25px}
  .platform-section{padding:82px 0}.platform-steps,.governance-grid{grid-template-columns:1fr}.platform-step{min-height:145px}
  .manufacturing-product-card{padding:31px 25px;border-radius:16px}.manufacturing-product-card h3{font-size:40px;letter-spacing:-2px}.manufacturing-product-card p{font-size:13px}.product-card-actions{flex-wrap:wrap}
  .solution-card{min-height:330px}.solutions-grid{grid-template-columns:1fr}.service-row{display:grid;grid-template-columns:auto 1fr auto;gap:14px}.service-row>div:first-of-type{grid-column:2}.service-tags{grid-column:2;grid-row:2;margin:0;flex-wrap:wrap}.service-row .round-button{grid-column:3;grid-row:1/3}
  .process-grid{grid-template-columns:1fr;gap:15px}.process-grid article{padding:22px}.governance-section{padding:85px 0}.governance-copy h2{font-size:48px}.company-art{min-height:340px}.company-copy h2{font-size:49px}.faq-section{grid-template-columns:1fr;gap:35px}.cta-section{padding:46px 27px;border-radius:16px}.cta-section h2{font-size:52px;letter-spacing:-2.5px}.cta-orbit{font-size:240px;right:-60px;top:90px}
  body:has(.product-hero) header{padding:15px 17px}body:has(.product-hero) .product-nav{display:none}body:has(.product-hero) .product-hero{padding:78px 17px 75px;min-height:0}body:has(.product-hero) .product-hero h1{font-size:51px;letter-spacing:-3px}body:has(.product-hero) .section{padding-block:80px}body:has(.product-hero) .final{padding:42px 27px;border-radius:16px}
  body:has(.app-layout) .main,body:has(.shell) .main{padding:28px 17px 52px}
}
