/* Public website only: the separate CMS and ERP keep their own UI. */
.public-body{--ink:#212d3d;--red:#ad173b;--wine:#7d1732;--paper:#fcfaf7;background:#fcfaf7;color:var(--ink);overflow-x:clip}
.public-body .container{width:min(1240px,calc(100% - 80px))}
.public-body .preview-banner{background:#efe7df;color:#74645c;font-size:10px;padding:5px 16px}
.public-body .site-header{position:sticky;top:0;min-height:96px;background:#fcfaf7f0;backdrop-filter:blur(18px);border-bottom:1px solid #30253512;padding:17px max(32px,calc((100vw - 1320px)/2));gap:24px}
.public-body .brand{font-size:12px;gap:12px;max-width:340px}
.public-body .brand img{width:49px}.public-body .brand small{color:#897e78;font-size:10px}
.public-body .site-header nav{gap:22px}.public-body .site-header nav a{position:relative;font-size:12px;padding-block:6px}
.public-body .site-header nav a:after{content:'';position:absolute;inset:auto 0 0;height:2px;background:var(--red);transform:scaleX(0);transform-origin:right;transition:transform .22s}
.public-body .site-header nav a:hover:after{transform:scaleX(1)}
.public-body .automation{border-color:#c6b5ad;background:#fff9f3;border-radius:50px;padding:11px 18px;box-shadow:0 3px 12px #46263704;transition:background .2s,transform .2s,color .2s}
.public-body .automation:hover{background:var(--wine);transform:translateY(-2px);color:white;border-color:var(--wine)}
.public-body .hero{grid-template-columns:1fr 1fr;gap:65px;padding-block:52px 76px;min-height:720px;position:relative}
.public-body .hero:before{content:'';position:absolute;width:50%;height:88%;right:-4%;top:3%;z-index:-1;background:radial-gradient(ellipse,#e8d6c45e,transparent 68%);pointer-events:none}
.public-body .hero-copy{padding-block:20px;min-width:0}.public-body .eyebrow{color:#a51f41;letter-spacing:0;font-size:12px;display:flex;gap:12px;align-items:center}
.eyebrow-line{display:block;width:27px;height:2px;background:#b07754}
.public-body .hero h1{font-size:clamp(37px,4.3vw,65px);line-height:1.55;letter-spacing:-.04em;margin-block:20px 25px;max-width:620px;color:#273142}
.public-body .hero-description{font-size:14px;color:#7a7471;line-height:2.25;max-width:520px;margin-bottom:30px}
.public-body .button{background:linear-gradient(120deg,#c42048,#941332);border-radius:12px;padding:14px 22px;box-shadow:0 9px 22px #9e173526;display:inline-flex;align-items:center;justify-content:space-between;gap:26px;transition:transform .22s,box-shadow .22s;font-size:12px}
.public-body .button:hover{transform:translateY(-3px);box-shadow:0 13px 28px #9e17353d}.public-body .button span{font-size:22px;font-weight:400;line-height:1}
.public-body .actions{gap:24px;flex-wrap:wrap}.public-body .text-link{font-size:12px;text-underline-offset:7px}.public-body .actions>.text-link{display:flex;gap:12px;align-items:center;color:#51474a}
.hero-location{display:flex;align-items:center;gap:13px;margin-top:37px;padding-top:25px;border-top:1px solid #d9ccc270;max-width:340px}
.hero-location strong{display:block;font-size:11px;font-weight:500;color:#625b59}.hero-location small{display:block;color:#9c8c80;font-size:10px;margin-top:3px}
.location-mark{width:37px;height:37px;border:1px solid #ddd0c4;border-radius:50%;display:grid;place-items:center;color:#b27851;font-size:24px}
.public-body .hero-art{width:100%;max-width:none;margin:0;aspect-ratio:.92;min-width:0;border-radius:180px 30px 30px 30px;background:radial-gradient(ellipse at 32% 30%,#674f53 0,transparent 58%),linear-gradient(140deg,#293746,#182530 75%);overflow:hidden;isolation:isolate;box-shadow:0 26px 50px #26324425,0 1px 1px #ffffffb3 inset;perspective:1300px}
.art-grain{position:absolute;inset:0;opacity:.13;background-image:radial-gradient(#f9e4c8 1px,transparent 1px);background-size:7px 7px;pointer-events:none;mask-image:linear-gradient(transparent,#000)}
.art-arch{position:absolute;width:76%;height:85%;bottom:-11%;left:-14%;border:1px solid #dccbb536;border-radius:45% 45% 0 0;background:linear-gradient(140deg,#e6b38d1c,#a7183c15);transform:rotate(-20deg)}
.art-arch:after{content:'';position:absolute;inset:17px;border:1px solid #dccbb51c;border-radius:inherit}
.art-orbit{position:absolute;width:390px;height:390px;border-radius:50%;border:1px solid #efcfad18;right:-37%;top:18%}
.art-orbit-two{width:450px;height:450px;right:-43%;top:13%}.art-orbit-one:after{content:'';width:8px;height:8px;background:#dcb494;border-radius:50%;position:absolute;left:18%;top:12%;box-shadow:0 0 25px #ffcf9e9c}
.scene-top{position:absolute;top:35px;left:40px;right:40px;color:#ecdbc6a6;letter-spacing:3px;font-size:9px;direction:ltr;display:flex;justify-content:space-between;gap:15px}.scene-top>span{font-size:7px;letter-spacing:1.3px;color:#dfc8b779}
.scene-atom{width:62px;height:62px;stroke:#e0b99b;stroke-width:1.2;position:absolute;top:17%;right:7%;opacity:.6;transform:rotate(-18deg)}
.book-shadow{position:absolute;width:65%;height:60px;bottom:12%;left:16%;border-radius:50%;background:#080f22a3;filter:blur(19px);transform:rotate(-9deg)}
.public-body .book-illustration{width:58%;aspect-ratio:.74;border-radius:12px 4px 4px 12px;background:linear-gradient(115deg,#b52a49,#8c1533 72%,#65152d);box-shadow:-4px 4px 0 #e9d7b8,-8px 8px 0 #d7c7a7,-12px 12px 0 #f3e6cd,-16px 16px 0 #cfb99a,0 35px 45px #050d1b59;border-right:11px solid #6a102a;transform:rotate(-11deg) rotateY(12deg);padding:35px 14px 24px;margin-top:8px;animation:book-float 7s ease-in-out infinite;will-change:transform}
.public-body .book-illustration:before{inset:14px;border-color:#edb79840;border-radius:7px}
.public-body .book-illustration:after{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,#ffffff14,transparent 35%,transparent 80%,#0002);pointer-events:none}
.public-body .book-illustration .book-edition{font-size:8px;letter-spacing:2px;position:absolute;top:29px;opacity:.65}
.public-body .book-illustration img{width:35%;margin-bottom:18px;opacity:.95}.public-body .book-illustration strong{font-size:clamp(21px,2.4vw,34px);white-space:nowrap;color:#ffedd3}.public-body .book-illustration>span:not(.book-edition){font-size:8px;margin-top:8px;max-width:90%}
.public-body .book-lines{width:48%;margin-top:26px;height:15px;border-color:#f6c69c30}.public-body .book-illustration>small{font-size:7px;opacity:.62;margin-top:30px}
.book-corner{position:absolute;right:29px;top:0;width:10px;height:28px;background:#e0bd8e;clip-path:polygon(0 0,100% 0,100% 100%,50% 81%,0 100%)}
.art-note{position:absolute;bottom:15%;right:7%;display:flex;gap:10px;align-items:center;max-width:85%;border:1px solid #fff9ef6b;background:#fff8eaf0;box-shadow:0 12px 30px #04101b40;padding:15px 18px;border-radius:14px;transform:rotate(4deg);animation:note-float 8s ease-in-out infinite}
.art-note strong{display:block;font-size:10px;color:#4d3539}.art-note div>span{display:block;font-size:8px;color:#98715b;margin-top:3px}.note-icon{color:#af2242;font-size:29px;line-height:1}
.scene-bottom{position:absolute;bottom:23px;right:30px;left:30px;display:flex;justify-content:space-between;align-items:center;gap:10px;color:#dbd0c1a1;font-size:8px}.scene-arrow{font-size:25px;color:#d6b78c}
.discovery{display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:0;position:relative;background:white;border:1px solid #e6dfd7;border-radius:22px;box-shadow:0 14px 45px #43332a08;overflow:hidden;scroll-margin-top:115px}
.discovery-heading{padding:33px 27px;background:#f2ece5}.discovery-heading>.eyebrow{font-size:10px;margin-bottom:14px}.discovery-heading h2{font-size:27px;line-height:1.65;margin:0;letter-spacing:-.05em}
.discovery-link{display:block;position:relative;text-decoration:none;padding:29px 27px;border-inline-start:1px solid #e9e2db;transition:background .25s}
.discovery-link:hover{background:#fff8f2}.path-number{position:absolute;top:22px;left:22px;font-size:10px;color:#bcaba0;letter-spacing:2px}.path-icon{display:grid;place-items:center;width:44px;height:44px;background:#f7efeb;border-radius:13px;color:#a62a45;margin-bottom:20px;transition:transform .25s,background .25s}.path-icon svg{width:25px;height:25px;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.discovery-link:hover .path-icon{transform:translateY(-4px) rotate(-5deg);background:#eed9dc}.discovery-link h3{font-size:15px;line-height:1.8;margin-bottom:6px}.discovery-link p{font-size:10px;color:#97887f;margin:0;max-width:180px}.path-arrow{position:absolute;bottom:24px;left:23px;color:#a41b3b;font-size:19px}
.public-body .section{padding-block:85px}.public-body .section-heading{margin-bottom:35px;gap:22px}.public-body .section-heading h2{font-size:37px;line-height:1.55;margin-bottom:0;color:#293443}.public-body .section-heading h2 span{color:#93877f;font-weight:500}.section-more{display:inline-flex;align-items:center;gap:17px;text-decoration:none;color:#67283c;font-size:11px;border-bottom:1px solid #dbc9bf;padding:9px 0;white-space:nowrap}.section-more span{font-size:21px}.section-more:hover{border-color:var(--red)}
.public-body .content-card{border:1px solid #e4d9d0;background:white;border-radius:19px;box-shadow:0 8px 25px #40302908;transition:transform .25s,box-shadow .25s}.public-body .content-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px #40302915}.public-body .content-card>img{transition:transform .5s}.public-body .content-card:hover>img{transform:scale(1.025)}
.public-body .card-placeholder{background:repeating-linear-gradient(45deg,transparent,transparent 20px,#ffffff08 20px,#ffffff08 21px),linear-gradient(130deg,#ab2145,#51273d);color:#e9cfaf;font-size:50px}.public-body .content-card h3{font-size:18px;color:#263244}.public-body .content-card p{color:#8d7c72}
.public-body .empty-public{border:1px solid #e5d8ca;background:linear-gradient(115deg,#f7efe4,#fffdf8);border-radius:20px;color:#8b7c72;padding:34px;display:flex;align-items:center;gap:24px}.public-body .empty-public h3{color:#4f3f3a;font-size:20px;margin:0 0 9px}.public-body .empty-public p{font-size:12px;margin:0}.empty-symbol{font-size:66px;color:#b88c65;line-height:1.2}.empty-course>.text-link{margin-inline-start:auto;white-space:nowrap}.public-body .empty-journal{background:#ffffffad;border-color:#fff;padding:30px;box-shadow:0 7px 24px #52433905}.journal-mark{font-family:Georgia,serif;font-size:105px;color:#b0224766;line-height:.8}
.public-body .journal{background:radial-gradient(ellipse at 0 0,#e8d9ca99,transparent 65%),#f1ece5;border-block:1px solid #e9dfd4}
.public-body .contact-band{padding:60px 65px;border-radius:28px;background:radial-gradient(ellipse at 15% 30%,#c44358,transparent 65%),linear-gradient(120deg,#a22241,#70152e);position:relative;overflow:hidden;min-height:360px;box-shadow:0 19px 35px #86203a21;isolation:isolate;flex-direction:row-reverse;align-items:center;gap:35px}
.public-body .contact-band h2{font-size:40px;color:#fff1df;line-height:1.55}.public-body .contact-band p{color:#e2b4b1;font-size:12px;max-width:430px}.public-body .contact-band .eyebrow{font-size:10px;line-height:2;color:#edc7b3}.public-body .contact-band .button-light{background:#fff2df;color:#7d1b36;box-shadow:0 6px 14px #4d0c2526;margin-top:14px}
.contact-art{position:relative;display:grid;place-items:center;flex-shrink:0;width:250px;height:250px;border:1px solid #f4bd9e45;border-radius:50%}.contact-art:before,.contact-art:after{content:'';position:absolute;inset:23px;border-radius:50%;border:1px solid #f4bd9e45}.contact-art:after{inset:-23px;border-style:dashed;border-color:#f4bd9e25;animation:orbit-turn 60s linear infinite}.contact-art>span{font-size:145px;color:#f5c394;font-family:Georgia,serif;line-height:1;animation:orbit-turn 50s linear infinite}.contact-art>i{position:absolute;width:11px;height:11px;border-radius:50%;background:#f5d5b0;right:12%;top:10%;box-shadow:0 0 24px #eac69f75}.contact-art>i:last-child{width:7px;height:7px;top:auto;right:auto;bottom:3%;left:26%}
.public-body .site-footer{background:#ece5dc;border-top:1px solid #e1d5c9;padding-top:58px}.public-body .footer-grid h2{font-size:15px;color:#463d3d}.public-body .footer-grid h3{font-size:12px}.public-body .footer-grid p,.public-body .footer-grid a{font-size:11px;line-height:2.4}.public-body .footer-bottom{border-color:#d8c9bd}.public-body .footer-bottom small{font-size:10px}.public-body .footer-bottom:empty{display:none}
.manager-bar{display:flex;justify-content:center;align-items:center;gap:25px;background:#273545;color:#fff4df;padding:8px 18px;font-size:11px;flex-wrap:wrap}.manager-bar a{color:#efd0ac}.manager-shortcut{font-size:11px!important;font-weight:600;color:#8c2240}
.public-body .contact-layout h1{font-size:48px}.public-body .form-card{border:1px solid #e4d7cc;box-shadow:0 15px 40px #4934260a;border-radius:22px;background:#fffefa}.public-body .form-card input,.public-body .form-card textarea{border-color:#dfcfc4;transition:box-shadow .2s,border-color .2s}.public-body .form-card input:focus,.public-body .form-card textarea:focus{border-color:#a82143;box-shadow:0 0 0 3px #a8214310;outline:0}
.reveal-pending{opacity:0;transform:translateY(25px);transition:opacity .65s ease,transform .65s ease}.reveal-pending.is-revealed{opacity:1;transform:none}
@keyframes book-float{0%,100%{transform:translateY(0) rotate(-11deg) rotateY(12deg)}50%{transform:translateY(-12px) rotate(-8deg) rotateY(8deg)}}
@keyframes note-float{0%,100%{transform:translateY(0) rotate(4deg)}50%{transform:translateY(7px) rotate(2deg)}}
@keyframes orbit-turn{to{transform:rotate(360deg)}}
@media(min-width:1500px){.public-body .hero{gap:85px;padding-block:65px 90px}.public-body .hero-art{max-height:650px}}
@media(max-width:1150px){.public-body .container{width:calc(100% - 56px)}.public-body .hero{gap:36px;min-height:650px}.public-body .site-header{gap:15px;padding-inline:25px}.public-body .site-header nav{gap:13px}.public-body .brand{max-width:285px;font-size:11px}.public-body .automation{font-size:10px;padding:10px 13px}.public-body .hero h1{font-size:47px}.scene-top>span{display:none}.discovery-heading,.discovery-link{padding:26px 22px}.discovery-link p{max-width:145px}.discovery-heading h2{font-size:24px}.public-body .contact-band{padding:45px}.contact-art{width:210px;height:210px}}
@media(max-width:850px){.public-body .container{width:calc(100% - 36px)}.public-body .site-header{padding:13px 18px;min-height:80px;gap:10px}.public-body .brand{max-width:calc(100% - 65px)}.public-body .brand img{width:40px}.public-body .site-header nav{gap:0}.public-body .site-header nav a{padding-block:10px}.public-body .site-header nav a:after{display:none}.public-body .automation{padding:8px 13px;font-size:10px}.public-body .hero{grid-template-columns:minmax(0,1fr);gap:36px;min-height:0;padding-block:35px 45px}.public-body .hero-copy{padding:0;max-width:630px}.public-body .hero h1{font-size:43px;max-width:650px;line-height:1.6;margin-block:16px 20px}.public-body .hero-description{font-size:13px;max-width:550px}.hero-location{margin-top:25px;padding-top:20px}.public-body .hero-art{max-width:550px;margin:auto;aspect-ratio:1.05;border-top-left-radius:150px}.public-body .book-illustration{width:49%;aspect-ratio:.74}.public-body .book-illustration strong{font-size:27px}.discovery{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:18px}.discovery-heading{grid-column:1/-1;padding:20px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px}.discovery-heading .eyebrow{margin:0}.discovery-heading h2{font-size:21px;line-height:1.7}.discovery-heading br{display:none}.discovery-link{padding:26px 19px;min-height:225px}.discovery-link h3{font-size:13px}.discovery-link p{font-size:10px}.public-body .section{padding-block:55px}.public-body .section-heading h2{font-size:30px}.public-body .empty-public{padding:25px;flex-wrap:wrap;gap:16px}.empty-course>.text-link{margin-inline-start:0}.public-body .contact-band{padding:35px;gap:35px;flex-direction:row-reverse}.public-body .contact-band h2{font-size:31px}.contact-art{width:155px;height:155px}.contact-art>span{font-size:100px}.contact-art:after{inset:-15px}.public-body .contact-layout h1{font-size:37px}}
@media(max-width:520px){.public-body .container{width:calc(100% - 32px)}.public-body .hero{gap:28px;padding-block:30px 35px}.public-body .hero h1{font-size:37px}.public-body .hero .eyebrow{font-size:10px;gap:8px}.public-body .hero-description{font-size:12px;line-height:2.25;margin-bottom:23px}.public-body .hero .actions{gap:19px}.public-body .hero .button{font-size:10px;padding:12px 15px;gap:18px}.public-body .hero .text-link{font-size:10px;gap:7px}.hero-location{margin-top:24px;padding-top:18px}.hero-location strong{font-size:10px}.hero-location small{font-size:9px}.location-mark{width:31px;height:31px;font-size:22px}.public-body .hero-art{width:100%;aspect-ratio:.98;border-radius:105px 22px 22px 22px}.scene-top{top:25px;left:26px;right:26px;font-size:7px;letter-spacing:2px}.public-body .book-illustration{width:52%;padding:28px 9px 20px;border-right-width:7px}.public-body .book-illustration strong{font-size:21px}.public-body .book-illustration img{width:34%;margin-bottom:11px}.public-body .book-illustration>span:not(.book-edition){font-size:6px}.public-body .book-illustration .book-edition{font-size:6px;top:22px}.public-body .book-illustration>small{font-size:5px;margin-top:16px}.public-body .book-lines{margin-top:17px;height:11px}.art-note{padding:11px 12px;right:5%;bottom:15%;border-radius:11px}.art-note strong{font-size:8px}.art-note div>span{font-size:7px}.note-icon{font-size:23px}.scene-bottom{bottom:17px;right:23px;left:23px;font-size:6px}.scene-atom{width:45px;height:45px;top:18%;right:5%}.book-corner{height:22px;right:23px;width:8px}.discovery{grid-template-columns:1fr}.discovery-heading{padding:18px 23px;grid-column:auto}.discovery-heading h2{font-size:19px}.discovery-heading>.eyebrow{font-size:9px}.discovery-link{padding:22px 77px 22px 48px;border-inline-start:0;border-top:1px solid #ebe3da;min-height:106px}.path-icon{position:absolute;right:19px;top:28px;margin:0;width:40px;height:40px}.path-number{top:17px;left:19px;font-size:9px}.discovery-link h3{font-size:14px;margin-bottom:5px}.discovery-link p{max-width:none;font-size:10px}.path-arrow{bottom:18px;left:21px}.public-body .section{padding-block:43px}.public-body .section-heading{margin-bottom:25px;align-items:end;gap:12px}.public-body .section-heading h2{font-size:26px}.public-body .section-heading .eyebrow{font-size:10px;margin-bottom:13px}.section-more{font-size:9px;gap:8px}.section-more span{font-size:17px}.public-body .empty-public{gap:15px;padding:23px}.public-body .empty-public h3{font-size:17px}.public-body .empty-public p{font-size:11px}.empty-symbol{font-size:44px}.empty-course>div{max-width:calc(100% - 60px)}.empty-course>.text-link{font-size:10px;margin-inline-start:55px}.journal-mark{font-size:74px}.empty-journal>div{max-width:calc(100% - 55px)}.public-body .contact-band{display:block;padding:30px 25px;border-radius:22px;min-height:390px}.public-body .contact-band>div:not(.contact-art){position:relative;z-index:1}.public-body .contact-band h2{font-size:33px;max-width:240px}.public-body .contact-band p{font-size:11px;max-width:240px}.public-body .contact-band .eyebrow{font-size:9px;max-width:200px}.contact-art{position:absolute;left:-42px;top:52px;width:175px;height:175px;opacity:.2;transform:rotate(-16deg)}.public-body .contact-band .button-light{font-size:11px;margin-top:17px}.public-body .footer-grid p,.public-body .footer-grid a{font-size:11px}.public-body .footer-grid{gap:30px}.manager-bar{font-size:10px;gap:12px;padding:10px}.public-body .contact-layout h1{font-size:32px}}
.scene-top{left:86px;top:40px}
@media(max-width:520px){.scene-top{left:60px;top:27px}.discovery-heading h2 br{display:block}.public-body .empty-journal{flex-wrap:nowrap;align-items:center}.journal-mark{flex:0 0 29px;font-size:65px}.empty-journal>div{flex:1;min-width:0;max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.public-body *, .public-body *:before,.public-body *:after{animation:none!important;transition:none!important;will-change:auto!important}.reveal-pending{opacity:1!important;transform:none!important}}
@media print{.reveal-pending{opacity:1!important;transform:none!important}.public-body .site-header{position:static}.public-body .hero-art{print-color-adjust:exact}.manager-bar{display:none}}

.public-body .article-breadcrumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:11px;color:#8f796d;margin-bottom:24px}.public-body .article-meta{font-size:11px;color:#8b7770;margin-bottom:26px}.public-body .article .content-block h2{font-size:24px;line-height:1.8}.public-body .article .content-block p{line-height:2.3}.public-body .article-image{border-radius:22px}.public-body .article h1{font-size:clamp(28px,4vw,48px)}@media(max-width:520px){.public-body .article .content-block h2{font-size:20px}.public-body .article .content-block p{font-size:13px}.public-body .article-summary{font-size:14px}}

/* Desktop: one short 2D entrance, no continuously animated 3D/filtered scene.
   Keep the existing mobile motion and respect reduced-motion above. */
@media(min-width:851px){
 .public-body .site-header{background:#fcfaf7;backdrop-filter:none;-webkit-backdrop-filter:none}
 .public-body .hero-art{perspective:none}
 .public-body .art-grain{mask-image:none;opacity:.07}
 .public-body .book-shadow{filter:none;background:radial-gradient(ellipse,#080f2270,transparent 70%)}
 .public-body .book-illustration{transform:rotate(-9deg);animation:book-arrive 1.1s ease-out 1 both;will-change:auto}
 .public-body .art-note{animation:note-arrive 1.1s ease-out 1 both;will-change:auto}
 .public-body .contact-art:after,.public-body .contact-art>span{animation:none;will-change:auto}
}
@keyframes book-arrive{from{transform:translateY(14px) rotate(-12deg)}to{transform:translateY(0) rotate(-9deg)}}
@keyframes note-arrive{from{opacity:0;transform:translateY(8px) rotate(1deg)}to{opacity:1;transform:translateY(0) rotate(4deg)}}
