/* Public service pages. No homepage, authentication or workspace styles. */
.ep-page{--ep-ink:#25112f;--ep-muted:#715e7a;--ep-purple:#800080;--ep-orange:#ff941c;--ep-line:#eaddee;background:#faf7fc;color:var(--ep-ink);overflow:clip;font-family:"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.75}
.ep-page *{box-sizing:border-box}
.ep-shell{width:min(1280px,calc(100% - 80px));margin-inline:auto}
.ep-page a:focus-visible,.ep-page button:focus-visible,.ep-page input:focus-visible,.ep-page select:focus-visible,.ep-page summary:focus-visible{outline:3px solid #c67adb;outline-offset:5px}
.ep-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:130;transform:scaleX(var(--ep-progress,0));transform-origin:left;background:linear-gradient(90deg,#800080,#ff941c);pointer-events:none}
.ep-hero{font-family:HomePoppins,Arial,sans-serif;position:relative;padding:145px 0 78px;background:radial-gradient(ellipse at 78% 40%,#bb80d722,transparent 55%),linear-gradient(140deg,#f7f0fa,#fffaf3);border-bottom:1px solid var(--ep-line);isolation:isolate}
.ep-hero:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.38;background-image:linear-gradient(#8000800a 1px,transparent 1px),linear-gradient(90deg,#8000800a 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(#000,transparent)}
.ep-breadcrumb{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--ep-muted);margin-bottom:38px}
.ep-breadcrumb a{color:inherit;text-decoration:none}
.ep-breadcrumb a:hover{color:var(--ep-purple)}
.ep-breadcrumb span[aria-hidden]{color:#b293be}
.ep-hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:76px;align-items:center}
.ep-kicker{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ep-purple);margin:0 0 18px;display:flex;gap:10px;align-items:center}
.ep-kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ep-orange);box-shadow:0 0 0 5px #ff941c13;flex:none}
.ep-page h1{font-size:clamp(38px,4.15vw,64px);letter-spacing:-2.8px;line-height:1.09;font-weight:700;margin:0 0 25px;max-width:760px;text-wrap:balance}
.ep-page h1 em{font-style:normal;color:var(--ep-purple)}
.ep-lead{font-size:16px;line-height:1.85;color:var(--ep-muted);max-width:570px;margin:0 0 30px}
.ep-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}
.ep-button{display:inline-flex;gap:23px;align-items:center;justify-content:center;min-height:48px;padding:14px 22px;background:var(--ep-purple);color:#fff!important;border:1px solid var(--ep-purple);border-radius:9px;text-decoration:none;font-size:14px;font-weight:600;box-shadow:0 8px 22px #80008018;cursor:pointer;transition:transform .2s,box-shadow .2s}
.ep-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #80008028}
.ep-button-secondary{background:#fff;color:var(--ep-ink)!important;border-color:var(--ep-line);box-shadow:none}
.ep-text-link{color:var(--ep-purple);font-size:14px;font-weight:600;text-decoration:none;display:inline-flex;gap:13px;align-items:center}
.ep-text-link:hover{text-decoration:underline;text-underline-offset:5px}
.ep-caption{font-size:13px;color:var(--ep-muted);margin:18px 0 0}
.ep-system{position:relative;perspective:1200px;min-width:0}
.ep-system:before{content:"";position:absolute;inset:10% -7%;border-radius:50%;background:radial-gradient(ellipse,#b46ad728,transparent 65%);filter:blur(20px);pointer-events:none}
.ep-console{position:relative;background:linear-gradient(145deg,#321041,#190922);border:1px solid #562660;border-radius:22px;box-shadow:0 30px 70px -30px #36144490,inset 0 1px 0 #ffffff24;transform:perspective(1200px) rotateX(var(--ep-rx,0deg)) rotateY(var(--ep-ry,0deg));transition:transform .4s cubic-bezier(.2,.8,.2,1);overflow:hidden;color:#fff}
.ep-console:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 100% 0%,#ff941c16,transparent 60%);pointer-events:none}
.ep-console-top{display:flex;align-items:center;justify-content:space-between;padding:18px 23px;border-bottom:1px solid #ffffff12;font-size:11px;letter-spacing:1.6px;color:#c4a8ce}
.ep-window-dots{display:flex;gap:5px}
.ep-window-dots i{width:5px;height:5px;border-radius:50%;background:#94629e}
.ep-window-dots i:last-child{background:#ffad48}
.ep-console-brand{padding:27px 28px 20px;display:flex;gap:16px;align-items:center}
.ep-console-brand img{width:110px;height:44px;object-fit:contain}
.ep-console-brand span{display:block;border-left:1px solid #ffffff22;padding-left:16px;font-size:13px;line-height:1.65;color:#d8c5e0}
.ep-system-list{list-style:none;padding:0 26px;margin:0}
.ep-system-list li{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;padding:17px 14px;background:#ffffff07;border:1px solid #ffffff10;border-radius:11px;margin-bottom:10px;position:relative}
.ep-system-list li:not(:last-child):after{content:"";position:absolute;left:32px;top:100%;width:1px;height:11px;background:linear-gradient(#af73c5,#ff941c)}
.ep-system-list b{display:grid;place-items:center;font-size:12px;font-weight:500;width:29px;height:29px;border:1px solid #aa6bbe50;background:#ffffff05;border-radius:8px;color:#ffc788}
.ep-system-list strong{font-size:14px;font-weight:500;display:block}
.ep-system-list small{font-size:12px;display:block;color:#bfa8c9;margin-top:3px}
.ep-node-dot{width:6px;height:6px;border:1px solid #ffbd76;border-radius:50%;background:#ff941c33}
.ep-console-foot{margin:20px 27px 25px;border-top:1px solid #ffffff14;padding-top:15px;display:flex;justify-content:space-between;color:#c6acce;font-size:11px;letter-spacing:.4px}
.ep-console-foot span:last-child{color:#ffc688}
.ep-route-line{height:4px;border-radius:5px;margin:0 27px 25px;background:linear-gradient(90deg,#a647c7 0 30%,#e39759 60%,#ffbe62);transform-origin:left}
.ep-subnav{position:sticky;top:82px;z-index:20;background:#faf7fcf2;backdrop-filter:blur(16px);border-bottom:1px solid var(--ep-line)}
.ep-subnav .ep-shell{display:flex;align-items:center;gap:36px;overflow:auto;scrollbar-width:thin}
.ep-subnav a{display:block;flex:none;font-size:14px;color:var(--ep-muted);padding:18px 0;text-decoration:none;border-bottom:2px solid transparent}
.ep-subnav a[aria-current="location"],.ep-subnav a:hover{color:var(--ep-purple);border-color:var(--ep-purple)}
.ep-section{padding-block:80px;scroll-margin-top:145px}
.ep-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}
.ep-page h2{font-family:HomePoppins,Arial,sans-serif;font-size:clamp(26px,2.65vw,39px);line-height:1.2;letter-spacing:-1.4px;font-weight:650;margin:0;max-width:710px;text-wrap:balance}
.ep-heading>p{max-width:410px;margin:0;color:var(--ep-muted);font-size:16px;line-height:1.85}
.ep-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ep-card{border:1px solid var(--ep-line);border-radius:16px;padding:28px;background:linear-gradient(150deg,#fff,#fffcff);box-shadow:0 14px 28px -26px #60007550;position:relative;transition:border-color .25s,transform .25s,box-shadow .25s}
.ep-card:hover{transform:translateY(-5px);border-color:#c28fd1;box-shadow:0 23px 35px -28px #60007565}
.ep-card-index{display:inline-flex;color:var(--ep-purple);font-size:12px;border:1px solid #eadcef;background:#f8f1fc;border-radius:8px;padding:8px 10px;margin-bottom:25px}
.ep-card h3{font-size:20px;line-height:1.4;letter-spacing:-.4px;margin:0 0 12px}
.ep-card p{font-size:16px;color:var(--ep-muted);line-height:1.9;margin:0}
.ep-card .ep-text-link{margin-top:23px}
.ep-workflow{background:#f2ebf6;border-block:1px solid var(--ep-line)}
.ep-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;list-style:none;padding:0;margin:42px 0 0}
.ep-steps>li{position:relative;padding-top:24px;border-top:1px solid #d5bddf}
.ep-steps>li:before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;background:var(--ep-orange);border-radius:50%}
.ep-step-number{font-size:12px;color:var(--ep-purple);display:block;margin-bottom:17px}
.ep-steps h3{font-size:19px;margin:0 0 10px;line-height:1.4}
.ep-steps p{font-size:16px;color:var(--ep-muted);line-height:1.9;margin:0}
.ep-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.ep-notes{list-style:none;margin:25px 0 0;padding:0}
.ep-notes li{padding:15px 0 15px 23px;border-bottom:1px solid var(--ep-line);position:relative;color:var(--ep-muted);font-size:16px}
.ep-notes li:before{content:"↗";position:absolute;left:0;color:var(--ep-purple)}
.ep-availability{border:1px solid #ead6c2;background:linear-gradient(140deg,#fffdf9,#fff6ec);border-radius:16px;padding:30px;align-self:start}
.ep-availability h3{font-size:19px;margin:8px 0 14px}
.ep-availability p{font-size:15px;color:#745c57;line-height:1.9;margin:0 0 16px}
.ep-availability .ep-kicker{color:#a65b0e;font-size:11px}
.ep-related{padding:32px 0 70px}
.ep-related-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
.ep-related-links a{border:1px solid var(--ep-line);padding:12px 16px;background:#fff;border-radius:8px;color:var(--ep-ink);font-size:14px;text-decoration:none}
.ep-related-links a:hover{border-color:var(--ep-purple);color:var(--ep-purple)}
.ep-cta{margin:0 auto 80px;padding:42px 46px;border:1px solid #bd91cb;border-radius:20px;background:linear-gradient(110deg,#2c0e38,#451249);color:#fff;display:flex;gap:35px;align-items:center;justify-content:space-between}
.ep-cta h2{font-size:28px;color:#fff}
.ep-cta p{font-size:12px;color:#decde4;margin:12px 0 0;max-width:630px}
.ep-cta .ep-button{background:#ffb557;color:#25112f!important;border-color:#ffb557;flex:none}
.ep-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ep-directory a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:94px;padding:22px;border:1px solid var(--ep-line);background:#fff;border-radius:13px;text-decoration:none;color:var(--ep-ink);transition:transform .2s,border-color .2s}
.ep-directory a:hover{transform:translateY(-3px);border-color:#bc86ca}
.ep-directory strong{display:block;font-size:17px;font-weight:600}
.ep-directory small{display:block;font-size:14px;color:var(--ep-muted);margin-top:6px}
.ep-directory b{color:var(--ep-purple);font-weight:400}
.ep-faq{border-top:1px solid var(--ep-line)}
.ep-product-directory{border-top:1px solid var(--ep-line);padding:22px 0}
.ep-product-directory summary{font-size:18px;font-weight:600;cursor:pointer;list-style-position:inside}
.ep-product-directory .ep-directory{margin-top:24px}
.ep-faq details{border-bottom:1px solid var(--ep-line);padding:22px 0}
.ep-faq summary{font-size:17px;font-weight:600;cursor:pointer;list-style-position:outside;margin-left:19px;padding-left:7px}
.ep-faq p{font-size:16px;color:var(--ep-muted);max-width:900px;margin:16px 25px 0}
.ep-people{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.ep-person{border:1px solid var(--ep-line);border-radius:16px;overflow:hidden;background:#fff}
.ep-person img{width:100%;aspect-ratio:1;object-fit:cover;background:#eee0f5;display:block}
.ep-person div{padding:22px}
.ep-person h3{font-size:19px;margin:0 0 5px}
.ep-person p{font-size:14px;color:var(--ep-muted);margin:0}
.ep-notice{border-left:3px solid var(--ep-orange);padding:20px 25px;background:#fff8ee;color:#73583e;font-size:15px;border-radius:0 9px 9px 0}
.ep-calculators{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.ep-calculator{background:#fff;border:1px solid var(--ep-line);border-radius:18px;padding:30px}
.ep-calculator h3{font-size:22px;margin:0 0 12px}
.ep-calculator>p{font-size:15px;color:var(--ep-muted)}
.ep-field{margin:18px 0}
.ep-field label{font-size:15px;display:block;margin-bottom:8px;font-weight:600}
.ep-field input{font:inherit;font-size:16px;padding:13px;width:100%;border:1px solid #d9c7e0;background:#fffcff;border-radius:7px;color:var(--ep-ink)}
.ep-calculator output{display:block;margin-top:25px;background:#f7f0fa;border:1px solid var(--ep-line);border-radius:10px;padding:21px;white-space:pre-line;font-size:16px}
.ep-calculator output strong{display:block;font-size:27px;color:var(--ep-purple)}
.ep-calculator .ep-error{color:#a21843;font-size:14px;min-height:20px}
.ep-reveal{scroll-margin-top:140px}
.ep-reveal.ep-will-reveal{opacity:.12;transform:translateY(24px);transition:opacity .75s ease,transform .85s cubic-bezier(.2,.8,.2,1)}
.ep-reveal.ep-shown{opacity:1;transform:none}
/* Existing public pages keep their controls, sections and legal text. */
.about-page,.pr-page,.pc-page,.contact-layout,.legal-shell{--enterprise-accent:#800080}
.about-page .ab-hero,.pr-page .pr-hero,.pc-page .pc-hero{background-image:radial-gradient(ellipse at 85% 25%,#ad65cf20,transparent 60%),linear-gradient(130deg,#faf4fd,#fffbf5)}
.about-page .ab-person,.about-page .ab-purpose,.pr-page .pr-product{box-shadow:0 22px 50px -34px #63237b45;transition:box-shadow .25s,transform .25s}
.about-page .ab-person:hover,.about-page .ab-purpose:hover{box-shadow:0 30px 60px -32px #63237b60;transform:translateY(-4px)}
.pc-page .pc-sidebar{scrollbar-width:thin}
.contact-layout .form-card{border-color:#e8d7ef;box-shadow:0 25px 70px -35px #71308365;background:linear-gradient(150deg,#fff,#fffaff)}
.contact-layout h1{letter-spacing:-2px}
.contact-layout .contact-note{border:1px solid #ead9f0;border-radius:14px;background:linear-gradient(120deg,#faf2ff,#fff9ed)}
.legal-shell{border:1px solid #e8dbee;border-radius:20px;background:#fff;box-shadow:0 20px 50px -35px #71308340}
@media(min-width:901px){.ep-hero-copy{animation:ep-copy-entry .9s cubic-bezier(.2,.8,.2,1) both}.ep-system{animation:ep-console-entry 1.3s cubic-bezier(.2,.8,.2,1) both}.ep-route-line{animation:ep-route-entry 1.7s ease-out both}}
@keyframes ep-copy-entry{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes ep-console-entry{from{opacity:0;transform:translateX(35px) rotateY(-9deg)}to{opacity:1;transform:none}}
@keyframes ep-route-entry{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:1100px){.ep-hero-grid{gap:40px}.ep-page h1{font-size:48px}.ep-card{padding:24px}.ep-people{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-system-list strong{font-size:14px}}
@media(max-width:900px){.ep-shell{width:calc(100% - 44px)}.ep-hero{padding-top:135px}.ep-hero-grid{grid-template-columns:1fr;gap:42px}.ep-page h1{max-width:660px}.ep-lead{max-width:650px}.ep-system{max-width:590px;width:100%}.ep-heading{display:block}.ep-heading>p{margin-top:20px;max-width:650px}.ep-section{padding-block:55px}.ep-cards,.ep-steps{gap:15px}.ep-card{padding:20px}.ep-detail-grid{gap:30px}.ep-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-subnav{top:86px}.ep-subnav .ep-shell{gap:24px}.ep-cta{padding:32px;display:block}.ep-cta .ep-button{margin-top:23px}}
@media(max-width:600px){.ep-shell{width:calc(100% - 32px)}.ep-hero{padding:134px 0 42px}.ep-breadcrumb{font-size:10px;gap:9px;margin-bottom:26px}.ep-page h1{font-size:38px;letter-spacing:-1.5px}.ep-lead{font-size:16px;line-height:1.8}.ep-kicker{font-size:11px;letter-spacing:1.5px}.ep-actions{gap:12px}.ep-button{padding:12px 17px;font-size:14px;gap:16px}.ep-console-top{padding:15px 19px}.ep-console-brand{padding:22px}.ep-system-list{padding:0 16px}.ep-system-list li{padding:13px 11px;gap:9px}.ep-system-list small{font-size:12px}.ep-console-foot{margin:18px}.ep-subnav{top:89px}.ep-subnav a{padding:14px 0;font-size:14px}.ep-subnav .ep-shell{gap:24px}.ep-cards,.ep-steps,.ep-detail-grid,.ep-calculators{grid-template-columns:1fr}.ep-card{padding:25px}.ep-card-index{margin-bottom:18px}.ep-steps{gap:25px;margin-top:28px}.ep-heading{margin-bottom:24px}.ep-page h2{font-size:29px;letter-spacing:-1px}.ep-availability{padding:25px}.ep-section{padding-block:42px}.ep-directory{grid-template-columns:1fr;gap:12px}.ep-directory a{min-height:77px}.ep-cta{padding:28px;margin-bottom:45px}.ep-cta h2{font-size:25px}.ep-related{padding-bottom:42px}.ep-people{gap:13px}.ep-person div{padding:15px}.ep-person h3{font-size:19px}.ep-person p{font-size:14px}.ep-calculator{padding:23px}.ep-notice{padding:18px}.contact-layout h1{letter-spacing:-1.2px}}
@media(max-width:380px){.ep-page h1{font-size:34px;letter-spacing:-1.25px}}
@media(prefers-reduced-motion:reduce){.ep-page *,.ep-hero-copy,.ep-system,.ep-route-line,.ep-reveal.ep-will-reveal{animation:none!important;transition:none!important;transform:none!important;opacity:1}.ep-card:hover,.ep-button:hover,.ep-directory a:hover,.about-page .ab-person:hover,.about-page .ab-purpose:hover{transform:none}.ep-progress{display:none}}
@media print{.ep-subnav,.ep-progress,.ep-actions,.ep-cta{display:none}.ep-hero{padding-top:25px}.ep-page,.ep-workflow{background:#fff}.ep-console{box-shadow:none}.ep-reveal.ep-will-reveal{opacity:1;transform:none}.ep-section{break-inside:avoid;padding-block:25px}.ep-shell{width:100%}}
