/* VEA visual system. Marketing rules stay in .vea-home; Moodle changes target Boost chrome and named pages. */
:root { --vea-ink:#143a31; --vea-green:#103c32; --vea-deep:#0a2b24; --vea-gold:#c9ae72; --vea-paper:#f4f0e7; --vea-muted:#637169; --vea-line:#d8d9cc; --vea-serif:Georgia,'Times New Roman',serif; }
.vea-home { color:var(--vea-ink); background:var(--vea-paper); font-family:Arial,'Helvetica Neue',sans-serif; font-size:16px; line-height:1.6; overflow:clip; -webkit-font-smoothing:antialiased; }
.vea-home *, .vea-home *::before, .vea-home *::after { box-sizing:border-box; }
.vea-home h1,.vea-home h2,.vea-home h3,.vea-home p { margin:0; }
.vea-home h1,.vea-home h2,.vea-home h3 { color:inherit; font-weight:400; }
.vea-home h1,.vea-home h2 { font-family:var(--vea-serif); letter-spacing:-.045em; line-height:1.08; }
.vea-home h2 { font-size:clamp(36px,4.1vw,64px); }
.vea-home em { font-weight:400; }
.vea-home a { color:inherit; text-decoration:none; }
.vea-home button,.vea-home input { font:inherit; }
.vea-home button { cursor:pointer; }
.vea-home [hidden] { display:none !important; }
.vea-home svg { display:block; }
.vea-home a:focus-visible,.vea-home button:focus-visible,.vea-home input:focus-visible { outline:3px solid #a37929; outline-offset:5px; }
.vea-home .vea-hero a:focus-visible,.vea-home .vea-final-cta a:focus-visible,.vea-home .vea-learning a:focus-visible { outline-color:#f7d996; }
.vea-sr-only { position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.vea-skip { position:absolute; z-index:10; top:8px; left:16px; padding:10px 20px; background:var(--vea-paper); transform:translateY(-200%); }
.vea-skip:focus { transform:none; }
.vea-masthead { max-width:1600px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:32px; padding:26px clamp(24px,4.8vw,76px); }
.vea-brand { display:flex; align-items:center; gap:17px; flex-shrink:0; }
.vea-brand img { flex-shrink:0; }
.vea-brand > span { font-family:var(--vea-serif); font-size:16px; line-height:1.25; }
.vea-brand strong { font-weight:400; font-size:26px; letter-spacing:.02em; }
.vea-nav { display:flex; align-items:center; gap:30px; font-size:12px; }
.vea-nav a { padding:10px 0; }
.vea-nav a:hover,.vea-footer nav a:hover { text-decoration:underline; text-underline-offset:5px; }
.vea-cabinet { display:flex; align-items:center; gap:25px; font-size:12px; border-bottom:1px solid #93a297; padding:9px 0; white-space:nowrap; }
.vea-cabinet span { font-size:19px; }
.vea-hero { position:relative; color:var(--vea-paper); background:var(--vea-green); min-height:750px; padding:64px clamp(24px,4.8vw,76px) 0; display:grid; grid-template-columns:1.1fr 1fr; column-gap:40px; }
.vea-hero::after,.vea-final-cta::after { content:''; position:absolute; inset:0; pointer-events:none; opacity:.035; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.8' filter='url(%23n)'/%3E%3C/svg%3E"); }
.vea-hero-copy { position:relative; z-index:1; max-width:700px; padding-top:8px; }
.vea-eyebrow { display:flex; align-items:center; gap:14px; font-size:10px; text-transform:uppercase; letter-spacing:.15em; color:var(--vea-gold); }
.vea-small-line { display:inline-block; height:1px; width:30px; background:currentColor; }
.vea-hero h1 { font-size:clamp(54px,5.45vw,85px); margin:30px 0 24px; }
.vea-hero h1 em { color:var(--vea-gold); }
.vea-hero-intro { max-width:445px; font-size:14px; line-height:1.8; color:#d5ded5; }
.vea-hero-actions { display:flex; align-items:center; gap:32px; margin-top:34px; }
.vea-button { display:inline-flex; align-items:center; justify-content:space-between; gap:35px; padding:16px 23px; min-height:55px; font-size:12px; line-height:1.4; font-weight:600; border:1px solid transparent; transition:background .2s,color .2s; }
.vea-button span { font-weight:400; font-size:21px; line-height:1; }
.vea-button-gold { color:var(--vea-deep) !important; background:var(--vea-gold); }
.vea-button-gold:hover { background:#e1c995; }
.vea-button-dark { color:var(--vea-paper) !important; background:var(--vea-green); }
.vea-button-dark:hover { background:var(--vea-deep); }
.vea-text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:23px; border-bottom:1px solid currentColor; padding:8px 0; font-size:12px; line-height:1.5; }
.vea-text-link span { font-size:20px; }
.vea-text-link:hover { opacity:.75; }
.vea-hero-art { position:relative; color:var(--vea-gold); max-width:630px; align-self:center; justify-self:center; width:100%; padding:0 10px; }
.vea-art-caption { display:flex; justify-content:space-between; font-size:8px; text-transform:uppercase; letter-spacing:.18em; color:#b8bb99; padding:0 28px; }
.vea-architecture { width:100%; height:auto; max-height:590px; margin-top:-4px; }
.vea-art-note { position:absolute; bottom:17%; left:49%; transform:translate(-50%,-50%) rotate(-90deg); transform-origin:center; font-size:8px; letter-spacing:.2em; text-transform:uppercase; color:var(--vea-gold); white-space:nowrap; display:none; }
.vea-hero-foot { position:relative; z-index:1; grid-column:1/-1; margin-top:45px; display:grid; grid-template-columns:1.05fr .95fr .95fr auto; border-top:1px solid #436156; padding:24px 0 28px; align-items:center; gap:30px; }
.vea-hero-foot > p { font-family:var(--vea-serif); color:#c2d0c1; font-size:17px; line-height:1.4; }
.vea-hero-foot > p strong { color:var(--vea-paper); font-weight:400; }
.vea-hero-foot > div { display:flex; align-items:center; gap:20px; }
.vea-hero-number { font-family:var(--vea-serif); font-size:53px; line-height:1; color:var(--vea-gold); letter-spacing:-.05em; }
.vea-hero-foot > div > span:last-child { font-size:10px; line-height:1.6; color:#c2d0c1; }
.vea-hero-foot > a { width:48px; height:48px; border:1px solid #667c68; border-radius:50%; display:grid; place-items:center; font-size:25px; }
.vea-hero-foot > a:hover { border-color:var(--vea-gold); color:var(--vea-gold); }
.vea-section { padding:90px clamp(24px,4.8vw,76px); max-width:1600px; margin:auto; }
.vea-section-label { display:flex; align-items:baseline; gap:16px; text-transform:uppercase; letter-spacing:.12em; font-size:9px; line-height:1.7; font-weight:600; }
.vea-section-label > span { font-size:10px; font-weight:400; color:#8d7a49; }
.vea-purpose { display:grid; grid-template-columns:.65fr 1.9fr; gap:48px; padding-top:94px; padding-bottom:94px; }
.vea-purpose > .vea-section-label { margin-top:13px; }
.vea-purpose h2 { font-size:clamp(34px,3.8vw,58px); }
.vea-purpose h2 em { color:#697b66; }
.vea-purpose-bottom { display:grid; grid-template-columns:1.2fr 1fr; gap:55px; margin-top:32px; }
.vea-purpose-bottom p { font-size:13px; line-height:1.85; color:var(--vea-muted); }
.vea-programs { border-top:1px solid var(--vea-line); }
.vea-section-heading { display:grid; grid-template-columns:.65fr 1.4fr .5fr; gap:48px; align-items:start; }
.vea-section-heading > .vea-section-label { margin-top:12px; }
.vea-section-intro { font-size:13px; line-height:1.8; color:var(--vea-muted); max-width:440px; margin-top:24px !important; }
.vea-section-aside { border-left:1px solid #bec5b5; padding-left:22px; font-family:var(--vea-serif); font-size:23px; line-height:1.4; margin-top:14px; white-space:nowrap; }
.vea-section-aside strong { display:block; font-family:Arial,sans-serif; font-weight:400; font-size:10px; color:var(--vea-muted); }
.vea-catalog-tools { display:grid; grid-template-columns: minmax(230px,.7fr) 1.4fr; align-items:center; gap:35px; margin-top:45px; }
.vea-search { display:flex; align-items:center; gap:11px; border-bottom:1px solid #9ba79a; padding:5px 0 13px; min-width:0; color:#627665; }
.vea-search > svg { flex-shrink:0; }
.vea-home .vea-search input { width:100%; min-width:0; margin:0; padding:6px 0; border:0; border-radius:0; background:none; color:var(--vea-ink); box-shadow:none; font-size:13px; height:auto; }
.vea-search input::placeholder { color:#627665; opacity:1; }
.vea-search-reset { padding:4px 0; color:var(--vea-ink); background:none; border:0; font-size:10px !important; white-space:nowrap; text-decoration:underline; text-underline-offset:3px; }
.vea-filters { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.vea-filter { padding:9px 14px; min-height:38px; border:1px solid #bdc4b5; background:transparent; color:#486051; font-size:10px !important; font-weight:400; line-height:1.3; transition:background .2s; }
.vea-filter[aria-pressed="true"] { background:var(--vea-green); color:var(--vea-paper); border-color:var(--vea-green); }
.vea-filter:hover { border-color:var(--vea-green); }
.vea-catalog-summary { display:flex; justify-content:space-between; gap:20px; margin-top:26px; padding:15px 0; text-transform:uppercase; font-size:9px; letter-spacing:.09em; color:var(--vea-muted); }
.vea-catalogue { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #bbc4b5; border-left:1px solid #bbc4b5; }
.vea-card { position:relative; display:flex; flex-direction:column; min-height:350px; padding:32px 30px 24px; border:0; border-right:1px solid #bbc4b5; border-bottom:1px solid #bbc4b5; background:transparent; overflow:hidden; transition:background .2s; }
.vea-card:hover { background:#ebeadd; }
.vea-card-index { position:absolute; top:25px; right:26px; font-size:33px; line-height:1; font-family:var(--vea-serif); color:#91a08c; }
.vea-tag { display:block; width:calc(100% - 55px); margin:0 0 26px; padding:0; border:0; text-transform:uppercase; letter-spacing:.12em; font-size:8px; color:#647657; line-height:1.8; }
.vea-card h3 { font-family:var(--vea-serif); font-size:clamp(24px,2.1vw,33px); letter-spacing:-.03em; line-height:1.18; margin-bottom:18px; padding-right:4px; }
.vea-card > p { color:var(--vea-muted); font-size:12px; line-height:1.7; margin-bottom:24px; }
.vea-card-meta { margin-top:auto; font-size:9px; color:var(--vea-muted); padding-bottom:14px; }
.vea-card > a { display:flex; justify-content:space-between; padding-top:15px; border-top:1px solid #c6cdbb; font-size:11px; color:var(--vea-ink); }
.vea-card > a:hover { text-decoration:underline; text-underline-offset:4px; }
.vea-card:first-child { color:var(--vea-paper); background:var(--vea-green); }
.vea-card:first-child:hover { background:#174a3d; }
.vea-card:first-child .vea-tag,.vea-card:first-child .vea-card-index { color:var(--vea-gold); }
.vea-card:first-child > p,.vea-card:first-child .vea-card-meta { color:#c2d0c1; }
.vea-card:first-child > a { color:var(--vea-paper); border-color:#577460; }
.vea-empty { padding:60px 25px; text-align:center; border:1px solid #bbc4b5; }
.vea-empty h3 { font-family:var(--vea-serif); font-size:32px; }
.vea-empty p { font-size:13px; color:var(--vea-muted); margin:12px 0 22px; }
.vea-catalog-note { font-size:10px; color:var(--vea-muted); margin-top:21px !important; }
.vea-learning { color:var(--vea-paper); background:var(--vea-deep); }
.vea-learning-top { display:grid; grid-template-columns:.65fr 1.9fr; gap:48px; padding-bottom:55px; }
.vea-learning-top > .vea-section-label { margin-top:12px; }
.vea-learning .vea-section-label { color:#c2d0c1; }
.vea-learning .vea-section-label > span { color:var(--vea-gold); }
.vea-learning h2 em { color:var(--vea-gold); }
.vea-learning .vea-section-intro { color:#bdcbbb; max-width:560px; }
.vea-steps { list-style:none; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:0 clamp(24px,4.8vw,76px); max-width:1600px; margin-inline:auto; }
.vea-steps li { display:flex; flex-direction:column; gap:30px; border-top:1px solid #50685a; border-right:1px solid #39554a; padding:26px 28px 38px; }
.vea-steps li:first-child { padding-left:0; }
.vea-steps li:last-child { border-right:0; padding-right:0; }
.vea-step-number { display:block; font-family:var(--vea-serif); font-size:54px; line-height:1; color:var(--vea-gold); }
.vea-step-amount { font-size:8px; letter-spacing:.15em; text-transform:uppercase; color:#b7c4af; }
.vea-steps h3 { font-family:var(--vea-serif); font-size:25px; line-height:1.15; margin:13px 0 15px; }
.vea-steps p { font-size:11px; color:#b7c4af; line-height:1.8; }
.vea-learning-bottom { max-width:1600px; margin:auto; padding:26px clamp(24px,4.8vw,76px) 38px; display:flex; justify-content:space-between; align-items:center; border-top:1px solid #39554a; }
.vea-learning-bottom > span { font-family:var(--vea-serif); font-size:21px; color:#d8cfb4; }
.vea-learning-bottom > span > span { padding:0 13px; }
.vea-experience { display:grid; grid-template-columns:1fr 1fr; column-gap:clamp(36px,7vw,110px); padding-top:100px; padding-bottom:65px; }
.vea-experience .vea-section-label { margin-bottom:27px; }
.vea-experience h2 { font-size:clamp(35px,3.7vw,59px); }
.vea-experience-copy > .vea-button { margin-top:28px; }
.vea-features article { display:grid; grid-template-columns:29px 1fr 32px; gap:18px; border-top:1px solid #bbc4b5; padding:25px 0; }
.vea-features article:last-child { border-bottom:1px solid #bbc4b5; }
.vea-feature-index { color:#758466; font-size:9px; padding-top:7px; }
.vea-features h3 { font-family:var(--vea-serif); font-size:25px; line-height:1.3; }
.vea-features p { font-size:12px; color:var(--vea-muted); margin-top:8px; line-height:1.7; }
.vea-features svg { width:30px; height:30px; fill:none; stroke:#7c8d6a; stroke-width:1.1; stroke-linecap:round; stroke-linejoin:round; margin-top:3px; }
.vea-resource-strip { display:grid; grid-template-columns:1fr 1fr 1fr; align-items:center; grid-column:1/-1; gap:40px; border-top:1px solid #bbc4b5; padding-top:35px; margin-top:60px; }
.vea-resource-strip p { color:var(--vea-muted); font-size:10px; }
.vea-resource-strip strong { display:block; font-family:var(--vea-serif); font-weight:400; font-size:46px; line-height:1.1; color:var(--vea-ink); margin-bottom:8px; }
.vea-resource-strip > span { font-family:var(--vea-serif); font-size:31px; line-height:1.2; text-align:right; }
.vea-resource-strip > span em { color:#758466; }
.vea-document-section { background:#e9e9dc; display:grid; grid-template-columns:1fr 1fr; gap:clamp(35px,6vw,90px); padding:75px clamp(24px,7.5vw,120px); align-items:center; }
.vea-document-art { position:relative; display:grid; place-items:center; min-height:390px; }
.vea-document-art::before { content:''; position:absolute; width:300px; height:300px; border:1px solid #b4bd9c; border-radius:50%; }
.vea-document-art::after { content:''; position:absolute; width:340px; height:340px; border:1px solid #c9ccb7; border-radius:50%; }
.vea-document-sheet { width:300px; max-width:100%; padding:21px 29px 22px; background:#faf7ef; text-align:center; position:relative; z-index:1; border:1px solid #c7b993; outline:1px solid #c7b993; outline-offset:-9px; transform:rotate(-7deg); box-shadow:13px 20px 34px #162f2215; }
.vea-document-sheet img { width:64px; height:64px; margin:0 auto 8px; display:block; }
.vea-document-academy { display:block; font-family:var(--vea-serif); font-size:9px; }
.vea-document-label { display:block; margin-top:15px; font-family:var(--vea-serif); font-size:29px; letter-spacing:.15em; }
.vea-document-subtitle { display:block; font-size:6px; letter-spacing:.07em; margin-top:2px; }
.vea-document-sheet i { height:1px; background:#c3c4b6; display:block; margin:13px auto 0; width:100%; }
.vea-document-sheet i:nth-of-type(2) { width:73%; }
.vea-document-sheet i:nth-of-type(4) { width:60%; }
.vea-document-stamp { width:57px; height:57px; margin:20px auto 11px; display:flex; justify-content:center; flex-direction:column; border:1px solid #9cab96; border-radius:50%; color:#7b8c73; font-family:var(--vea-serif); }
.vea-document-stamp span:first-child { font-size:18px; }
.vea-document-stamp span:last-child { font-family:Arial,sans-serif; font-size:5px; letter-spacing:.1em; }
.vea-document-sample { display:block; font-size:6px; text-transform:uppercase; letter-spacing:.12em; color:#7b8c73; }
.vea-document-copy { max-width:540px; }
.vea-document-copy .vea-section-label { margin-bottom:25px; }
.vea-document-copy h2 { font-size:clamp(36px,3.65vw,57px); }
.vea-document-copy > p:not(.vea-section-label) { font-size:13px; color:var(--vea-muted); line-height:1.8; margin-top:26px; }
.vea-document-links { display:flex; flex-wrap:wrap; gap:20px 32px; margin-top:22px; }
.vea-document-copy p.vea-official-note { font-size:10px; border-top:1px solid #c4c8b6; padding-top:19px; }
.vea-final-cta { position:relative; background:var(--vea-green); color:var(--vea-paper); text-align:center; padding:76px 24px 80px; }
.vea-final-cta > * { position:relative; z-index:1; }
.vea-final-cta .vea-eyebrow { justify-content:center; margin-bottom:23px; }
.vea-final-cta h2 { font-size:clamp(43px,5.4vw,78px); }
.vea-final-cta h2 em { color:var(--vea-gold); }
.vea-final-cta .vea-button { margin-top:30px; }
.vea-final-actions { display:flex; justify-content:center; align-items:center; gap:28px; margin-top:30px; }
.vea-final-actions .vea-button { margin-top:0; }
.vea-footer { max-width:1600px; margin:auto; display:grid; grid-template-columns:1.1fr 1.5fr .8fr; gap:35px; align-items:center; padding:34px clamp(24px,4.8vw,76px); }
.vea-footer .vea-brand { gap:12px; }
.vea-footer .vea-brand > span { font-size:12px; }
.vea-footer .vea-brand strong { font-size:20px; }
.vea-footer nav { display:flex; justify-content:center; flex-wrap:wrap; gap:9px 25px; font-size:10px; }
.vea-footer > p { font-size:9px; line-height:1.8; color:var(--vea-muted); text-align:right; }
.vea-legal { grid-column:1/-1; display:grid; grid-template-columns:1fr 1.4fr .9fr; gap:25px; align-items:start; border-top:1px solid var(--vea-line); padding-top:21px; font-size:8px; line-height:1.8; color:var(--vea-muted); }
.vea-legal > a { justify-self:end; }
.vea-legal a { text-decoration:underline; text-underline-offset:3px; }

/* Boost chrome: avoid broad input, table, quiz or activity rules. */
body { --primary:#174b3d; --bs-primary:#174b3d; }
body .navbar.fixed-top { background:#103c32 !important; border-bottom:1px solid #456657; box-shadow:none; }
body .navbar.fixed-top .navbar-brand,body .navbar.fixed-top .nav-link,body .navbar.fixed-top .usermenu .dropdown-toggle,body .navbar.fixed-top .popover-region-toggle,body .navbar.fixed-top .editmode-switch-form label { color:#f4f0e7; }
body .navbar.fixed-top .navbar-brand { font-family:Georgia,'Times New Roman',serif; letter-spacing:-.02em; }
body .navbar.fixed-top .primary-navigation .navigation .nav-link.active { color:#e4c88e; border-bottom-color:#c9ae72; }
body .navbar.fixed-top .btn { color:#f4f0e7; }
body .navbar.fixed-top .btn:hover { background:#24574a; }
body .navbar.fixed-top .dropdown-menu .dropdown-item { color:#143a31; }
body .navbar.fixed-top .navbar-toggler { color:#f4f0e7; }
#page-site-index:has(.vea-home) #page-header { display:none; }
#page-site-index:has(.vea-home) #page.drawers .main-inner { max-width:none; padding:0; margin:0; background:transparent; border-radius:0; }
#page-site-index:has(.vea-home) #region-main { padding:0; border:0; background:transparent; overflow:visible; }
#page-site-index:has(.vea-home) #region-main > .card { border:0; }
#page-site-index:has(.vea-home) #region-main > .card > .card-body { padding:0; }
#page-site-index:has(.vea-home) #page-content { padding:0; }
#page-site-index:has(.vea-home) .section-item { padding:0; border:0; border-radius:0; margin:0; background:none; }
#page-site-index:has(.vea-home) .course-section { margin:0; }
#page-site-index:has(.vea-home) .content > div:has(> .summarytext) { margin:0; }
#page-site-index.notloggedin:has(.vea-home) .navbar.fixed-top { display:none; }
#page-site-index.notloggedin:has(.vea-home) #page { margin-top:0; }
.vea-policy { max-width:900px; margin:auto; line-height:1.8; }
.vea-policy h2,.vea-policy h3,.vea-lesson h2,.vea-lesson h3 { font-family:Georgia,'Times New Roman',serif; color:#143a31; }
#page-site-index:has(.vea-home) .course-content { margin:0; }
#page-site-index:has(.vea-home) .sitetopic { padding:0; }
#page-site-index:has(.vea-home) #page.drawers { padding-left:0; padding-right:0; }
#page-site-index:has(.vea-home) #page.drawers div[role="main"] { padding:0; }
#page-site-index:has(.vea-home) .vea-home + #frontpage-course-list,#page-site-index:has(.vea-home) .vea-home + #frontpage-available-course-list { margin:40px; }
#page-login-index { background:#0a2b24; }
#page-login-index .login-container { background:#f4f0e7; color:#143a31; border:1px solid #b6a171; box-shadow:0 20px 90px #0004; border-radius:0; padding:48px; }
#page-login-index .login-heading,#page-login-index .login-container h1,#page-login-index .login-container h2 { font-family:Georgia,'Times New Roman',serif; color:#143a31; font-weight:400; letter-spacing:-.035em; }
#page-login-index .login-container a { color:#174b3d; }
#page-login-index .login-container .btn-primary { background:#103c32; border-color:#103c32; color:#f4f0e7; }
#page-login-index .login-container .form-control { border-radius:0; border-color:#a7b2a0; }
#page-login-index .login-container .login-logo img { max-height:100px; }
#page-my-index,#page-course-index,#page-course-index-category { background:#eeeede; }
#page-my-index #page-header h1,#page-course-index #page-header h1,#page-course-index-category #page-header h1 { font-family:Georgia,'Times New Roman',serif; color:#143a31; font-weight:400; letter-spacing:-.035em; }
#page-my-index .block,#page-my-index .dashboard-card,#page-course-index .coursebox,#page-course-index-category .coursebox { border:1px solid #c9cebc; border-radius:0; box-shadow:none; }
#page-my-index .dashboard-card .dashboard-card-img { border-radius:0; background-color:#dce3d0; }
#page-my-index .progress-bar { background-color:#174b3d; }
#page-my-index .block h3,#page-my-index .dashboard-card .coursename,#page-course-index .coursename,#page-course-index-category .coursename { color:#143a31; font-family:Georgia,'Times New Roman',serif; }
#page-my-index .block .btn-primary,#page-course-index .btn-primary,#page-course-index-category .btn-primary { background-color:#174b3d; border-color:#174b3d; }

@media (min-width:1600px) { .vea-hero { padding-inline:max(76px,calc((100vw - 1448px)/2)); } }
@media (max-width:1199px) {
  .vea-masthead { gap:20px; padding-top:20px; padding-bottom:20px; }
  .vea-nav { gap:18px; font-size:10px; }
  .vea-brand img { width:59px; height:59px; }
  .vea-brand > span { font-size:13px; }
  .vea-brand strong { font-size:23px; }
  .vea-cabinet { gap:15px; font-size:10px; }
  .vea-hero { column-gap:15px; padding-top:48px; min-height:0; }
  .vea-hero-actions { gap:22px; }
  .vea-hero-actions .vea-text-link { font-size:10px; }
  .vea-art-caption { font-size:7px; padding:0 4px; }
  .vea-section { padding-top:70px; padding-bottom:70px; }
  .vea-purpose,.vea-learning-top { grid-template-columns:.5fr 1.8fr; gap:35px; }
  .vea-section-heading { grid-template-columns:.5fr 1.3fr .5fr; gap:35px; }
  .vea-section-aside { font-size:21px; padding-left:15px; }
  .vea-card { padding:29px 24px 23px; }
  .vea-card-index { right:20px; font-size:29px; }
  .vea-card h3 { font-size:27px; }
  .vea-steps li { padding-right:19px; padding-left:19px; }
  .vea-steps h3 { font-size:23px; }
  .vea-footer { grid-template-columns:1fr 1.2fr; }
  .vea-footer > p { display:none; }
  .vea-legal { grid-template-columns:1fr 1.4fr; }
  .vea-legal > a { grid-column:1/-1; justify-self:start; }
}
@media (max-width:959px) {
  .vea-nav { display:none; }
  .vea-hero { grid-template-columns:1.2fr .9fr; }
  .vea-hero h1 { font-size:clamp(49px,6.4vw,64px); }
  .vea-eyebrow { font-size:8px; letter-spacing:.1em; }
  .vea-hero-intro { font-size:12px; }
  .vea-hero-actions { align-items:flex-start; flex-direction:column; gap:13px; }
  .vea-hero-art { padding:0; }
  .vea-art-caption { display:none; }
  .vea-hero-foot { grid-template-columns:.9fr 1fr 1fr auto; gap:20px; }
  .vea-hero-foot > p { font-size:14px; }
  .vea-hero-number { font-size:41px; }
  .vea-hero-foot > div { gap:12px; }
  .vea-hero-foot > div > span:last-child { font-size:9px; }
  .vea-purpose { display:block; }
  .vea-purpose > .vea-section-label { margin:0 0 24px; }
  .vea-purpose h2 { font-size:44px; }
  .vea-purpose-bottom { gap:35px; }
  .vea-section-heading { grid-template-columns:1fr auto; gap:25px; }
  .vea-section-heading > .vea-section-label { grid-column:1/-1; margin:0; }
  .vea-catalog-tools { grid-template-columns:1fr; gap:19px; }
  .vea-filters { justify-content:flex-start; }
  .vea-search { max-width:420px; }
  .vea-catalogue { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vea-card h3 { font-size:30px; }
  .vea-learning-top { display:block; }
  .vea-learning-top .vea-section-label { margin:0 0 24px; }
  .vea-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vea-steps li { display:grid; grid-template-columns:50px 1fr; gap:20px; padding:28px 25px; }
  .vea-steps li:first-child,.vea-steps li:nth-child(3) { padding-left:0; }
  .vea-steps li:nth-child(2) { padding-right:0; border-right:0; }
  .vea-step-number { font-size:44px; }
  .vea-steps h3 { margin-top:7px; }
  .vea-experience { gap:35px; }
  .vea-experience h2 { font-size:37px; }
  .vea-features article { grid-template-columns:22px 1fr 24px; gap:11px; }
  .vea-features h3 { font-size:22px; }
  .vea-features svg { width:24px; height:24px; }
  .vea-resource-strip { gap:30px; }
  .vea-resource-strip > span { font-size:27px; }
  .vea-document-section { gap:25px; padding-inline:36px; }
  .vea-document-art::before { width:260px; height:260px; }
  .vea-document-art::after { width:290px; height:290px; }
  .vea-document-sheet { width:260px; }
  .vea-document-copy h2 { font-size:37px; }
  .vea-document-copy > p:not(.vea-section-label) { font-size:12px; }
}
@media (max-width:639px) {
  .vea-home { font-size:14px; }
  .vea-masthead { padding:17px 20px; gap:10px; }
  .vea-brand { gap:10px; }
  .vea-brand img { width:48px; height:48px; }
  .vea-brand > span { font-size:10px; }
  .vea-brand strong { font-size:19px; }
  .vea-cabinet { font-size:9px; gap:9px; max-width:82px; white-space:normal; line-height:1.4; }
  .vea-hero { display:block; padding:34px 24px 0; }
  .vea-eyebrow { font-size:7px; letter-spacing:.1em; gap:10px; }
  .vea-small-line { width:20px; }
  .vea-hero h1 { font-size:clamp(45px,10.1vw,65px); margin:24px 0 20px; }
  .vea-hero-intro { font-size:12px; max-width:360px; }
  .vea-hero-actions { flex-direction:row; flex-wrap:wrap; gap:12px 22px; align-items:center; margin-top:25px; }
  .vea-button { padding:14px 19px; min-height:50px; font-size:11px; gap:27px; }
  .vea-hero-actions .vea-text-link { font-size:9px; }
  .vea-hero-art { max-width:330px; margin:22px auto -7px; }
  .vea-architecture { max-height:325px; }
  .vea-hero-foot { margin-top:15px; padding-top:20px; padding-bottom:24px; display:grid; grid-template-columns:1fr 1fr; gap:19px; }
  .vea-hero-foot > p { grid-column:1/-1; font-size:14px; }
  .vea-hero-foot > p br { display:none; }
  .vea-hero-foot > p strong::before { content:' '; }
  .vea-hero-foot > a { display:none; }
  .vea-hero-number { font-size:45px; }
  .vea-hero-foot > div > span:last-child { font-size:8px; }
  .vea-section { padding:53px 24px; }
  .vea-home h2,.vea-purpose h2,.vea-experience h2,.vea-document-copy h2 { font-size:clamp(32px,7.7vw,45px); }
  .vea-section-label { font-size:8px; letter-spacing:.1em; gap:12px; }
  .vea-purpose > .vea-section-label { margin-bottom:20px; }
  .vea-purpose-bottom { grid-template-columns:1fr; gap:18px; margin-top:24px; }
  .vea-purpose-bottom p { font-size:12px; }
  .vea-section-heading { grid-template-columns:1fr; gap:20px; }
  .vea-section-aside { display:none; }
  .vea-section-intro { margin-top:18px !important; font-size:12px; }
  .vea-catalog-tools { margin-top:30px; gap:17px; }
  .vea-search { padding-bottom:10px; }
  .vea-filter { font-size:9px !important; padding:9px 11px; }
  .vea-filters { flex-wrap:nowrap; overflow-x:auto; padding:5px 2px 10px; margin-inline:-2px; scrollbar-width:thin; }
  .vea-filter { flex-shrink:0; }
  .vea-catalog-summary { font-size:8px; margin-top:15px; }
  .vea-catalogue { grid-template-columns:1fr; }
  .vea-card { min-height:305px; padding:27px 25px 22px; }
  .vea-card h3 { font-size:30px; padding-right:7px; }
  .vea-tag { margin-bottom:22px; }
  .vea-card > p { font-size:12px; margin-bottom:24px; }
  .vea-catalog-note { font-size:9px; }
  .vea-learning-top { padding-bottom:32px; }
  .vea-steps { display:block; padding:0 24px; }
  .vea-steps li,.vea-steps li:first-child,.vea-steps li:last-child { grid-template-columns:42px 1fr; gap:22px; padding:25px 0; border-right:0; }
  .vea-step-number { font-size:39px; }
  .vea-steps h3 { font-size:25px; margin:7px 0 11px; }
  .vea-steps p { font-size:11px; }
  .vea-learning-bottom { padding:24px 24px 34px; flex-direction:column; align-items:flex-start; gap:14px; }
  .vea-learning-bottom > span { font-size:23px; }
  .vea-experience { display:block; }
  .vea-experience .vea-section-label { margin-bottom:21px; }
  .vea-features { margin-top:34px; }
  .vea-features article { padding:24px 0; grid-template-columns:23px 1fr 27px; gap:14px; }
  .vea-features h3 { font-size:24px; }
  .vea-features p { font-size:11px; }
  .vea-resource-strip { grid-template-columns:1fr 1fr; gap:24px 20px; margin-top:33px; padding-top:27px; }
  .vea-resource-strip strong { font-size:41px; }
  .vea-resource-strip p { font-size:9px; }
  .vea-resource-strip > span { grid-column:1/-1; font-size:27px; text-align:left; }
  .vea-resource-strip > span br { display:none; }
  .vea-document-section { display:flex; flex-direction:column; align-items:stretch; padding:48px 24px; gap:29px; }
  .vea-document-art { min-height:340px; order:2; }
  .vea-document-sheet { width:245px; }
  .vea-document-copy > p:not(.vea-section-label) { font-size:12px; }
  .vea-document-links { gap:17px 24px; }
  .vea-document-links .vea-text-link { font-size:11px; gap:15px; }
  .vea-final-cta { padding:53px 24px 58px; }
  .vea-final-cta h2 { font-size:clamp(36px,9vw,55px); }
  .vea-final-actions { flex-direction:column; gap:14px; }
  .vea-footer { padding:28px 24px 30px; display:block; }
  .vea-footer .vea-brand { justify-content:flex-start; }
  .vea-footer .vea-brand img { width:50px; height:50px; }
  .vea-footer nav { justify-content:flex-start; margin-top:24px; gap:10px 22px; }
  .vea-legal { display:block; margin-top:24px; }
  .vea-legal > p { margin-bottom:13px; }
  #page-login-index .login-container { padding:30px 24px; }
}
@media (prefers-reduced-motion:reduce) { .vea-home *, .vea-home *::before, .vea-home *::after { scroll-behavior:auto !important; transition:none !important; } }
@media print { .vea-nav,.vea-hero-actions,.vea-catalog-tools,.vea-final-cta,.vea-cabinet,.vea-skip { display:none !important; } .vea-home { color:#000; background:#fff; } .vea-card,.vea-steps li { break-inside:avoid; } .vea-hero,.vea-learning { color:#000; background:#fff; } }
