Why is DBT changing datatypes, column lengths and column order

Hello,

I have an existing table in Redshift and when I try to transform (from another table) and load data using DBT the
column datatypes, encoding, lengths and column order is getting changed.

Original Table

branch_sk **integer** NOT NULL ENCODE az64,
    city character varying(32) ENCODE **zstd**,
region character varying(**32**) ENCODE zstd,
    phone_number character varying(16) ENCODE zstd,
    fax_number character varying(16) ENCODE zstd,
    created_date date ENCODE az64,
    updated_date date ENCODE az64

After DBT model run

branch_sk **bigint** ENCODE az64,
city character varying(32) ENCODE **lzo**,
region character varying(**64**) ENCODE lzo,
created_date date ENCODE az64,
updated_date date ENCODE az64,
phone_number character varying(32) ENCODE lzo,
fax_number character varying(16) ENCODE lzo

I need to maintain the original table structure.
Is it possible in DBT? Is there a workaround?.
Please help.

Thanks,
Gauresh.