@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--navy:#081c3d;--navy2:#102d58;--gold:#bb9040;--ink:#102542;--muted:#59677a;--line:#dce2e9;--white:#fff;--mist:#f5f7fa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit}button{font:inherit}img{max-width:100%;display:block}.shell{width:min(100% - 64px,1240px);margin-inline:auto}.skip{position:absolute;top:-100px;left:16px;z-index:99;padding:10px;background:#fff}.skip:focus{top:10px}.site-header{height:86px;background:#fff;position:relative;z-index:10;border-bottom:1px solid #e8ebef}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{display:block;width:195px;flex:none}.brand img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:30px}.site-header nav a{font-size:14px;text-decoration:none;font-weight:600;color:#273b57;transition:color .2s}.site-header nav a:hover,.site-header nav a:focus{color:#a67a2f}.site-header nav .nav-contact{border:1px solid #bf9850;padding:10px 20px;color:#795b29}.menu-toggle{display:none}.eyebrow{color:#a37b36;font-weight:700;font-size:13px;letter-spacing:.16em;margin:0 0 26px}.eyebrow.light{color:#d9ad58}.eyebrow span{display:inline-block;width:24px;height:1px;background:currentColor;margin:0 10px 4px}.hero{background:radial-gradient(circle at 75% 45%,#174078 0,#0d2750 35%,#081a38 75%);color:#fff;position:relative;overflow:hidden}.hero-lines{position:absolute;inset:0 0 0 50%;opacity:.16;background:repeating-linear-gradient(117deg,transparent 0 94px,#a7bed8 95px 97px,transparent 98px 150px);mask-image:linear-gradient(90deg,transparent,#000 30%)}.hero-grid{position:relative;min-height:632px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:50px;padding:65px 0 76px}.hero-copy{max-width:660px}.hero h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.16;letter-spacing:-.035em;margin:0}.hero h1{font-size:clamp(45px,5vw,76px)}h2{font-size:clamp(38px,4vw,58px)}h1 em,h2 em{font-weight:400;color:#c8a158}.hero-lead{max-width:570px;font-size:18px;line-height:1.8;color:#d1dbe8;margin:33px 0 35px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;text-decoration:none;font-size:14px;font-weight:700;padding:15px 21px;min-height:56px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-gold{background:#cba659;color:#092248}.button-gold:hover{background:#e3be73}.button span{font-size:20px;font-weight:400}.hero-mark{justify-self:center;position:relative;width:min(100%,430px);height:415px;display:flex;align-items:center;justify-content:center}.mark-v{font:400 400px/.8 Georgia,serif;color:rgba(214,226,243,.055);position:absolute;top:40px}.mark-rule{position:absolute;width:1px;height:285px;background:linear-gradient(transparent,#d4a85b,transparent);transform:rotate(27deg)}.mark-caption{position:relative;z-index:1;color:#efdfbf;font-size:14px;font-weight:700;letter-spacing:.22em;line-height:2.2;text-align:center}.hero-bottom{position:relative;display:flex;justify-content:space-between;padding:0 0 27px;color:#a7b5c9;font-size:11px;font-weight:700;letter-spacing:.16em}.section{padding:110px 0;scroll-margin-top:30px}.two-col{display:grid;grid-template-columns:1fr .9fr;gap:10%}.section-copy{padding-top:58px;color:#47566a;font-size:18px;line-height:1.9}.section-copy p{margin:0 0 23px}.intro{border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:80px;margin-bottom:50px}.section-heading p:last-child{max-width:370px;color:#657284;font-size:17px;margin:0 0 5px}.group-section{background:var(--mist)}.group-map{padding:46px 8%;background:#fff;border:1px solid #e5e9ee;box-shadow:0 22px 50px #0b25420a}.parent-card{text-align:center;padding:28px 20px 24px;background:var(--navy);color:#fff;max-width:480px;margin:auto}.parent-label,.subs span,.filial-top{font-size:12px;letter-spacing:.15em;font-weight:700}.parent-label{color:#c5a365}.parent-card strong{display:block;font:500 38px Georgia,serif;letter-spacing:.1em;margin:7px 0}.parent-card strong span{font:400 15px 'DM Sans',sans-serif;letter-spacing:.25em;color:#cfae6c}.parent-card p{margin:0;color:#c9d4e1}.connector{height:56px;width:1px;background:#b99556;margin:0 auto;position:relative}.connector:after{content:'';position:absolute;bottom:0;left:50%;height:1px;width:min(55vw,500px);background:#b99556;transform:translateX(-50%)}.subs{display:grid;grid-template-columns:1fr 1fr;gap:28px}.subs>div{padding:27px 32px;border:1px solid #d9e1e9;border-top:3px solid #b99556}.subs span{color:#9b773d}.subs strong{display:block;font:400 30px Georgia,serif;margin:6px 0}.subs p{margin:0;color:#617087}.subs>div:first-child:before,.subs>div:last-child:before{content:'';display:block;width:1px;height:19px;background:#b99556;position:relative;top:-46px;margin:0 auto -19px}.subsidiaries h2{margin-bottom:47px}.filial-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.filial{border:1px solid #dce3ea;padding:34px 36px 39px;min-height:347px;display:flex;flex-direction:column;background:#fff;transition:box-shadow .2s,transform .2s}.filial:hover{box-shadow:0 18px 38px #10254212;transform:translateY(-3px)}.filial-top{display:flex;justify-content:space-between;color:#a17c3a}.filial h3{font:400 39px Georgia,serif;margin:35px 0 8px}.filial p{color:#58677a;margin:0 0 25px;max-width:450px}.filial a{margin-top:auto;align-self:start;text-decoration:none;color:#8b672c;font-weight:700;border-bottom:1px solid #b99556;padding-bottom:4px}.filial a span{margin-left:20px}.pilotage{background:#0b2144;color:#fff}.pilotage-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.pilotage h2{margin-bottom:30px}.pilotage-grid>div:first-child>p:last-child{font-size:18px;color:#c8d5e5;line-height:1.85;max-width:510px}.pillars{border-top:1px solid #4b617e}.pillars>div{display:grid;grid-template-columns:55px 1fr;gap:15px;padding:23px 0;border-bottom:1px solid #4b617e}.pillars span{color:#c6a361;font-size:14px;font-weight:700}.pillars h3{font:400 28px Georgia,serif;margin:0 0 7px}.pillars p{color:#b9c9dc;margin:0}.projects{background:#fff}.contact{background:linear-gradient(115deg,#0c244b,#153864);color:#fff;padding:80px 0}.contact-inner{display:flex;justify-content:space-between;align-items:end;gap:40px}.contact h2{margin-bottom:21px}.contact p:last-child{color:#d2ddec;font-size:17px}.button-outline{border:1px solid #c8a158;color:#fff;white-space:nowrap;margin-bottom:10px}.button-outline:hover{background:#c8a158;color:#0a2246}footer{background:#f1f4f7;color:#536278}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:50px 0 36px}.footer-main img{width:170px}.footer-main div{display:flex;flex-direction:column;text-align:right;font-size:13px}.footer-bottom{border-top:1px solid #d9e0e8;padding:19px 0 30px;display:flex;justify-content:space-between;gap:20px;font-size:13px}.footer-bottom a{text-decoration:none}.footer-bottom a:hover{text-decoration:underline}
@media(max-width:900px){.site-header nav{gap:16px}.site-header nav a{font-size:13px}.brand{width:164px}.hero-grid{min-height:550px}.hero-mark{width:280px}.mark-v{font-size:300px;top:90px}.two-col,.pilotage-grid{gap:6%}.section{padding:85px 0}}
@media(max-width:700px){.shell{width:min(100% - 36px,1240px)}.site-header{height:72px}.brand{width:162px}.menu-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:0;padding:12px;cursor:pointer}.menu-toggle span{width:24px;height:2px;background:var(--navy)}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;box-shadow:0 15px 22px #091c3320;padding:15px 18px 25px;flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{font-size:16px;padding:11px 8px}.site-header nav .nav-contact{margin-top:8px}.hero-grid{min-height:auto;display:block;padding:82px 0 85px}.hero h1{font-size:clamp(43px,10.5vw,64px)}.hero-lead{font-size:17px}.hero-mark{display:none}.hero-bottom{font-size:10px}.section{padding:75px 0}.two-col,.pilotage-grid{display:block}.section-copy{padding:25px 0 0;font-size:17px}.section-heading{display:block;margin-bottom:30px}.section-heading p:last-child{margin-top:20px}.group-map{padding:30px 18px}.parent-card strong{font-size:31px}.subs{gap:14px}.subs>div{padding:19px}.subs strong{font-size:23px}.subs p{font-size:14px}.filial-grid{grid-template-columns:1fr}.filial{min-height:310px}.pillars{margin-top:37px}.contact-inner{display:block}.button-outline{margin-top:15px}.footer-main{display:block}.footer-main div{text-align:left;margin-top:30px}.footer-bottom{flex-wrap:wrap}.footer-bottom span{width:100%}}
@media(max-width:420px){.hero-bottom span:last-child{display:none}.subs{grid-template-columns:1fr}.connector:after,.subs>div:before{display:none!important}.subs>div{border-top:2px solid #b99556}.filial{padding:25px}.contact h2{font-size:39px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* VEDS editorial composition and the distinct identities of its subsidiaries */
.site-header{border-bottom:1px solid #e0e6ed}
.hero{color:var(--navy);background:linear-gradient(102deg,#f8fafc 0%,#fff 58%,#f0f4f8 100%);border-bottom:5px solid var(--gold)}
.hero-lines{inset:0 0 0 49%;opacity:.6;background:repeating-linear-gradient(116deg,transparent 0 103px,#dbe3ed 104px 106px,transparent 107px 158px);mask-image:linear-gradient(90deg,transparent,#000 38%)}
.hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);min-height:570px;gap:7%;padding:64px 0 60px}
.hero-copy{padding-left:33px;border-left:4px solid var(--gold)}
.hero .eyebrow.light{color:#9a732d}
.hero h1{font-size:clamp(49px,5.3vw,79px);color:#0c2649}
.hero h1 em{color:#a7813b}
.hero-lead{color:#4b5e73}
.hero-mark{width:100%;height:370px;flex-direction:column;gap:25px}
.hero-emblem{width:min(100%,340px);height:265px;background:#0c2245;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:25px 25px 0 #dfe8f0}
.hero-emblem span{font:400 185px/.9 Georgia,serif;color:#e9eff5;letter-spacing:-.12em;padding-right:25px;position:relative}
.hero-emblem span:after{content:'';position:absolute;top:54%;left:21%;width:95px;height:7px;background:linear-gradient(90deg,#8b6428,#e1c47e)}
.hero-emblem small{font-size:13px;font-weight:600;letter-spacing:.45em;color:#d6b16e}
.mark-caption{font-size:12px;color:#395270;letter-spacing:.14em;line-height:1.7}
.mark-caption i{color:var(--gold);font-style:normal;padding:0 5px}
.hero-bottom{color:#65768b}
.intro{background:#0d254a;color:#fff;border:0;padding:86px 0}
.intro h2{max-width:580px}
.intro .section-copy{color:#d0dceb;padding-top:25px}
.intro .eyebrow{color:#d2ae6c}
.intro h2 em{color:#d2ae6c}
.group-section{background:#fff}
.group-section .section-heading{border-bottom:1px solid #dbe2ea;padding-bottom:32px}
.group-map{background:#f4f7fa;box-shadow:none;border:0;padding:55px 8% 58px}
.parent-card{max-width:390px;background:#0d254a;box-shadow:0 12px 30px #081d3c22}
.connector{height:62px}
.connector:after{background:#aab8c9}
.subs{gap:34px}
.subs>div{position:relative;min-height:205px;padding:29px 35px 38px;border:0;box-shadow:0 10px 28px #10254212;overflow:hidden}
.subs>div:before{background:#aab8c9!important}
.subs .subs-lokeo{background:#0b3566;color:#fff}
.subs .subs-vesta{background:#171717;color:#fff}
.subs .subs-lokeo span{color:#c7e594}
.subs .subs-vesta span{color:#d8b870}
.subs strong{font-size:35px}
.subs p{color:#dce6ef;max-width:350px}
.subs .subs-vesta p{color:#e5e0d8}
.subs .brand-accent{position:absolute;height:7px;left:0;right:0;bottom:0}
.subs-lokeo .brand-accent{background:#84b300}
.subs-vesta .brand-accent{background:#c89a3d}
.subs>div:first-child:before,.subs>div:last-child:before{top:-49px}
.subsidiaries{background:#f7f9fb}
.subsidiaries h2{max-width:850px}
.filial-grid{display:block;border-top:1px solid #ced8e3}
.filial{min-height:0;display:grid;grid-template-columns:170px minmax(130px,.5fr) minmax(280px,1fr) 190px;gap:25px;align-items:center;padding:27px 5px;background:transparent;border:0;border-bottom:1px solid #ced8e3;box-shadow:none!important;transform:none!important}
.filial-top{display:block}
.filial-top span{display:block}
.filial-top span:last-child{font-size:27px;line-height:1.2;color:#a7b3c1;margin-top:11px}
.filial h3{font-size:37px;margin:0}
.filial p{margin:0}
.filial a{margin:0;align-self:center}
.filial:first-child h3{color:#0b3566}
.filial:first-child a{color:#0b3566;border-color:#84b300}
.filial:last-child h3{color:#5b4524}
.filial:last-child a{color:#6b5027;border-color:#c89a3d}
.pilotage{background:#fff;color:var(--ink)}
.pilotage-grid{display:block}
.pilotage-grid>div:first-child{display:grid;grid-template-columns:1fr 1fr;column-gap:9%;align-items:end}
.pilotage-grid .eyebrow{grid-column:1/-1;color:#a37b36}
.pilotage-grid h2 em{color:#b58d48}
.pilotage-grid>div:first-child>p:last-child{color:#586b80;max-width:490px;margin:0 0 7px}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;border-top:0;margin-top:45px}
.pillars>div{display:block;min-height:240px;padding:27px 27px 33px;border:1px solid #d7e0e9;border-top:3px solid #b99556}
.pillars span{display:block;margin-bottom:36px}
.pillars h3{color:#122e55}
.pillars p{color:#617087}
.projects{background:#f3f6f9}
@media(max-width:1050px){.filial{grid-template-columns:100px minmax(130px,.5fr) 1fr}.filial a{grid-column:3}.hero-grid{gap:3%}}
@media(max-width:700px){.hero-grid{display:block;padding:77px 0 75px}.hero-copy{padding-left:18px}.hero h1{font-size:clamp(42px,10vw,62px)}.hero-mark{display:none}.hero-bottom{color:#65768b}.intro{padding:70px 0}.intro .section-copy{padding-top:20px}.group-map{padding:35px 18px}.subs{gap:15px}.subs>div{min-height:205px;padding:23px 18px 32px}.subs strong{font-size:25px}.subs p{font-size:14px}.filial{grid-template-columns:1fr 1fr;gap:14px 20px;padding:25px 0}.filial-top span:last-child{display:none}.filial h3{justify-self:end;font-size:29px}.filial p,.filial a{grid-column:1/-1}.filial a{justify-self:start;margin-top:5px}.pilotage-grid>div:first-child{display:block}.pilotage-grid>div:first-child>p:last-child{margin-top:22px}.pillars{grid-template-columns:1fr;gap:12px;margin-top:30px}.pillars>div{min-height:0;padding:22px}.pillars span{margin-bottom:12px}}
@media(max-width:420px){.subs{grid-template-columns:1fr}.subs>div{min-height:0}.subs>div:before{display:none!important}}

/* Revised group hierarchy and official mark */
.hero-emblem{background:#0c2245;border:1px solid #173761;box-shadow:20px 20px 0 #e1e8f0;padding:29px}
.hero-emblem img{width:100%;max-width:315px;background:#fff;padding:25px 17px;box-shadow:0 12px 30px #06152f35}
.parent-card{max-width:460px;padding:36px 28px 32px}
.subs{grid-template-columns:repeat(2,minmax(0,300px));justify-content:center;gap:46px}
.subs>div{min-height:178px;padding:24px 25px 33px}
.subs strong{font-size:29px}
.subs p{font-size:15px}
@media(max-width:700px){.subs{grid-template-columns:repeat(2,minmax(0,250px));gap:14px}.subs>div{min-height:190px;padding:20px 16px 29px}.subs strong{font-size:24px}.subs p{font-size:14px}}
@media(max-width:420px){.subs{grid-template-columns:minmax(0,280px)}.subs>div{min-height:0}.parent-card{padding:32px 18px}}

/* The group as an editorial hierarchy */
.group-composition{display:grid;grid-template-columns:minmax(0,480px) 100px minmax(0,400px);justify-content:center;align-items:center;gap:0;padding:22px 0 15px}
.group-holding{min-height:410px;background:#0b2348;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:30px 34px 33px;position:relative;box-shadow:15px 15px 0 #e8edf3}
.group-holding:before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#936922,#d8b879 65%,#936922)}
.holding-top{display:flex;justify-content:space-between;color:#c5aa79;font-size:12px;font-weight:700;letter-spacing:.17em}
.holding-identity{background:#fff;align-self:flex-start;width:min(100%,300px);padding:26px 23px;margin:29px 0 25px}
.holding-identity img{width:100%;height:auto}
.holding-bottom{border-top:1px solid #5c7090;padding-top:21px}
.holding-bottom strong{font:400 26px Georgia,serif}
.holding-bottom p{color:#c5d1df;margin:6px 0 0}
.group-branch{height:202px;position:relative}
.group-branch:before{content:'';position:absolute;width:1px;height:100%;background:#b28b48;top:0;left:50%}
.group-branch:after{content:'';position:absolute;height:1px;background:#b28b48;top:50%;left:0;right:50%}
.group-branch span:before,.group-branch span:after{content:'';position:absolute;height:1px;width:50%;right:0;background:#b28b48}
.group-branch span:before{top:0}.group-branch span:after{bottom:0}
.group-companies{display:flex;flex-direction:column;gap:30px}
.company-panel{min-height:172px;position:relative;text-decoration:none;background:#fff;border:1px solid #e1e6eb;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto;align-content:start;padding:19px 27px 23px;box-shadow:0 12px 30px #132c4810;transition:transform .2s,box-shadow .2s}
.company-panel:hover,.company-panel:focus-visible{transform:translateX(4px);box-shadow:0 16px 35px #132c4820}
.company-panel:before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px}
.company-index{grid-column:1/-1;font-size:11px;letter-spacing:.16em;font-weight:700}
.company-name{font:400 31px Georgia,serif;align-self:center;margin-top:5px}
.company-detail{font-size:14px;line-height:1.4;color:#56677a;align-self:end}
.company-arrow{grid-column:2;grid-row:2/4;align-self:end;font-size:22px;line-height:1}
.company-lokeo:before{background:#84b300}.company-lokeo .company-index{color:#659400}.company-lokeo .company-name,.company-lokeo .company-arrow{color:#0b3566}
.company-vesta:before{background:#c89a3d}.company-vesta .company-index{color:#9a6f29}.company-vesta .company-name,.company-vesta .company-arrow{color:#171717}
@media(max-width:850px){.group-composition{grid-template-columns:minmax(0,1.1fr) 70px minmax(0,.9fr)}.group-holding{min-height:388px;padding:27px}.company-panel{padding:18px 19px 21px}.company-name{font-size:27px}.company-detail{font-size:13px}}
@media(max-width:700px){.group-composition{display:block;padding:0}.group-holding{min-height:350px;max-width:460px;margin:auto;box-shadow:10px 10px 0 #e8edf3}.holding-identity{width:245px;margin:22px 0}.group-branch{height:52px;width:1px;background:#b28b48;margin:0 auto}.group-branch:before,.group-branch:after,.group-branch span:before,.group-branch span:after{display:none}.group-companies{max-width:370px;margin:auto;gap:15px}.company-panel{min-height:150px}.company-name{font-size:28px}.company-detail{font-size:14px}}

/* Holding panel: a restrained, light counterpart to the subsidiary cards */
.group-holding{background:#fff;color:#0c2649;border:1px solid #d7e0e9;box-shadow:0 18px 42px #132c4814;min-height:390px;padding:32px 39px 35px}
.group-holding:before{height:5px;background:linear-gradient(90deg,#a7792c,#d9bc7e 70%,#a7792c)}
.holding-top{color:#957036;font-size:11px;letter-spacing:.16em}
.holding-identity{background:transparent;width:min(100%,355px);padding:0;margin:33px 0 28px}
.holding-bottom{border-top:1px solid #d6dfe8;padding-top:24px}
.holding-bottom strong{font-size:27px;color:#0d2c55}
.holding-bottom p{color:#566b81}
@media(max-width:850px){.group-holding{min-height:380px;padding:29px}.holding-identity{width:min(100%,325px)}}
@media(max-width:700px){.group-holding{min-height:340px;padding:28px;box-shadow:0 14px 34px #132c4814}.holding-identity{width:min(100%,320px);margin:28px 0 24px}}

.group-note{max-width:710px;margin:25px auto 0;text-align:center;color:#5d6d80;font-size:15px;line-height:1.7}
.projects-visual{margin:55px 0 0;position:relative}
.projects-visual img{width:100%;height:clamp(290px,39vw,490px);object-fit:cover;object-position:center 57%}
.projects-visual figcaption{display:flex;justify-content:space-between;gap:25px;align-items:center;background:#0c254b;color:#e0e8f1;padding:17px 23px;font-size:14px}
.projects-visual figcaption span{color:#d4b577;white-space:nowrap;font-size:12px;text-transform:uppercase;letter-spacing:.13em}
@media(max-width:700px){.group-note{text-align:left;margin-top:30px}.projects-visual{margin-top:30px}.projects-visual img{height:290px}.projects-visual figcaption{display:block}.projects-visual figcaption span{display:block;margin-top:8px}}
