.elementor-1234 .elementor-element.elementor-element-b2200b7{--display:flex;}.elementor-1234 .elementor-element.elementor-element-b2200b7 .elementor-background-slideshow__slide__image{background-size:cover;}.elementor-1234 .elementor-element.elementor-element-c76712d{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-c76712d:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-c76712d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://akademik.universitas-bth.ac.id/wp-content/uploads/2026/05/header-dokumen-1-768x256.png");background-position:center right;background-repeat:no-repeat;background-size:auto;}.elementor-1234 .elementor-element.elementor-element-e102188{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1234 .elementor-element.elementor-element-286b143{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 10px;--row-gap:0px;--column-gap:10px;}.elementor-1234 .elementor-element.elementor-element-b70cc9a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-b70cc9a:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-b70cc9a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EDED;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1234 .elementor-element.elementor-element-51c6851 img{border-radius:5px 5px 5px 5px;}.elementor-1234 .elementor-element.elementor-element-bf5a675.elementor-element{--align-self:center;}.elementor-1234 .elementor-element.elementor-element-cd8e7b9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-cd8e7b9:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-cd8e7b9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EDED;}.elementor-1234 .elementor-element.elementor-element-b8f9508 img{border-radius:5px 5px 5px 5px;}.elementor-1234 .elementor-element.elementor-element-ab75835.elementor-element{--align-self:center;}.elementor-1234 .elementor-element.elementor-element-d5f754f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-d5f754f:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-d5f754f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EDED;}.elementor-1234 .elementor-element.elementor-element-60af08f img{border-radius:5px 5px 5px 5px;}.elementor-1234 .elementor-element.elementor-element-1e588bd.elementor-element{--align-self:center;}.elementor-1234 .elementor-element.elementor-element-24c86c4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-1234 .elementor-element.elementor-element-e6a0e4c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1234 .elementor-element.elementor-element-a025879{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-a025879:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-a025879 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EDED;}.elementor-1234 .elementor-element.elementor-element-a025879.e-con{--align-self:flex-start;}.elementor-1234 .elementor-element.elementor-element-5fd14e9 img{border-radius:5px 5px 5px 5px;}.elementor-1234 .elementor-element.elementor-element-d81bee0.elementor-element{--align-self:center;}.elementor-1234 .elementor-element.elementor-element-4d9a1b9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-4d9a1b9:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-4d9a1b9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EDED;}.elementor-1234 .elementor-element.elementor-element-4d9a1b9.e-con{--align-self:flex-start;}.elementor-1234 .elementor-element.elementor-element-782ec64 img{border-radius:5px 5px 5px 5px;}.elementor-1234 .elementor-element.elementor-element-a78bf70.elementor-element{--align-self:center;}.elementor-1234 .elementor-element.elementor-element-6e2a926{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-6e2a926:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-6e2a926 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EDED;}.elementor-1234 .elementor-element.elementor-element-6e2a926.e-con{--align-self:flex-start;}.elementor-1234 .elementor-element.elementor-element-f8e19a1 img{border-radius:5px 5px 5px 5px;}.elementor-1234 .elementor-element.elementor-element-8e8a982.elementor-element{--align-self:center;}.elementor-1234 .elementor-element.elementor-element-de5bc2b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-de5bc2b:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-de5bc2b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EDED;}.elementor-1234 .elementor-element.elementor-element-ecd3d90 img{border-radius:5px 5px 5px 5px;}.elementor-1234 .elementor-element.elementor-element-61c9516.elementor-element{--align-self:center;}.elementor-1234 .elementor-element.elementor-element-e4bebb9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1234 .elementor-element.elementor-element-d0dd77c{--display:flex;}.elementor-1234 .elementor-element.elementor-element-1202ff3{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-40ef89b{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:start;--align-items:start;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-40ef89b:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-40ef89b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFEF;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-1234 .elementor-element.elementor-element-a97f89d .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(0px/2);}.elementor-1234 .elementor-element.elementor-element-a97f89d .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(0px/2);}.elementor-1234 .elementor-element.elementor-element-a97f89d .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(0px/2);}.elementor-1234 .elementor-element.elementor-element-a97f89d .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-0px/2);}.elementor-1234 .elementor-element.elementor-element-a97f89d .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-0px/2);}.elementor-1234 .elementor-element.elementor-element-a97f89d .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-a97f89d .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-a97f89d{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-a97f89d .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-1234 .elementor-element.elementor-element-a97f89d .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-799a7ee{--display:flex;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-799a7ee:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-799a7ee > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFEF;}.elementor-1234 .elementor-element.elementor-element-3add302 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-3add302 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-3add302{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-3add302 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-978e5c7{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-e78b6cd{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:start;--align-items:start;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-e78b6cd:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-e78b6cd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFEF;}.elementor-1234 .elementor-element.elementor-element-f29f64b.elementor-element{--align-self:flex-start;}.elementor-1234 .elementor-element.elementor-element-f29f64b .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-f29f64b .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-f29f64b{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-f29f64b .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-0b9870b{--display:flex;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-0b9870b:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-0b9870b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFEF;}.elementor-1234 .elementor-element.elementor-element-0819694 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-0819694 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-0819694{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-0819694 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-31b88f5{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-25445a1{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:start;--align-items:start;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-25445a1:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-25445a1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFEF;}.elementor-1234 .elementor-element.elementor-element-d9afe49.elementor-element{--align-self:flex-start;}.elementor-1234 .elementor-element.elementor-element-d9afe49 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-d9afe49 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-d9afe49{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-d9afe49 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-0c38ead{--display:flex;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-0c38ead:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-0c38ead > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFEF;}.elementor-1234 .elementor-element.elementor-element-6bf1ae5 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-6bf1ae5 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-6bf1ae5{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-6bf1ae5 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-f642b5c{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-6eec3ef{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:start;--align-items:start;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-6eec3ef:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-6eec3ef > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFEF;}.elementor-1234 .elementor-element.elementor-element-458c0b4 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-458c0b4 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-458c0b4{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-458c0b4 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-e68b906{--display:flex;--border-radius:10px 10px 10px 10px;}.elementor-1234 .elementor-element.elementor-element-e68b906:not(.elementor-motion-effects-element-type-background), .elementor-1234 .elementor-element.elementor-element-e68b906 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFEF;}.elementor-1234 .elementor-element.elementor-element-19ffbe5 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-19ffbe5 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-19ffbe5{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-19ffbe5 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-6d9e084{--display:flex;}.elementor-1234 .elementor-element.elementor-element-4c5509b .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-4c5509b .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-4c5509b{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-4c5509b .elementor-icon-list-text{transition:color 0.3s;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-1234 .elementor-element.elementor-element-cd83aa9{--divider-border-style:solid;--divider-color:#FF6E00;--divider-border-width:1px;}.elementor-1234 .elementor-element.elementor-element-cd83aa9 .elementor-divider-separator{width:100%;}.elementor-1234 .elementor-element.elementor-element-cd83aa9 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1234 .elementor-element.elementor-element-7f8d1ef .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-7f8d1ef .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-7f8d1ef{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-7f8d1ef .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-4a45b4f{--divider-border-style:solid;--divider-color:#FF6E00;--divider-border-width:1px;}.elementor-1234 .elementor-element.elementor-element-4a45b4f .elementor-divider-separator{width:100%;}.elementor-1234 .elementor-element.elementor-element-4a45b4f .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1234 .elementor-element.elementor-element-fca8a49 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-fca8a49 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-fca8a49{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-fca8a49 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-2a403c7{--divider-border-style:solid;--divider-color:#FF6E00;--divider-border-width:1px;}.elementor-1234 .elementor-element.elementor-element-2a403c7 .elementor-divider-separator{width:100%;}.elementor-1234 .elementor-element.elementor-element-2a403c7 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1234 .elementor-element.elementor-element-56b21c2 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-56b21c2 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-56b21c2{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-56b21c2 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-15ce7a5{--divider-border-style:solid;--divider-color:#FF6E00;--divider-border-width:1px;}.elementor-1234 .elementor-element.elementor-element-15ce7a5 .elementor-divider-separator{width:100%;}.elementor-1234 .elementor-element.elementor-element-15ce7a5 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1234 .elementor-element.elementor-element-726f9b4 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-726f9b4 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1234 .elementor-element.elementor-element-726f9b4{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1234 .elementor-element.elementor-element-726f9b4 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1234 .elementor-element.elementor-element-3753154{--divider-border-style:solid;--divider-color:#FF6E00;--divider-border-width:1px;}.elementor-1234 .elementor-element.elementor-element-3753154 .elementor-divider-separator{width:100%;}.elementor-1234 .elementor-element.elementor-element-3753154 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1234 .elementor-element.elementor-element-0b4e06b{--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;--n-tabs-title-border-radius:10px 10px 10px 10px;}@media(min-width:768px){.elementor-1234 .elementor-element.elementor-element-b70cc9a{--width:25%;}.elementor-1234 .elementor-element.elementor-element-cd8e7b9{--width:25%;}.elementor-1234 .elementor-element.elementor-element-d5f754f{--width:25%;}.elementor-1234 .elementor-element.elementor-element-a025879{--width:25%;}.elementor-1234 .elementor-element.elementor-element-4d9a1b9{--width:25%;}.elementor-1234 .elementor-element.elementor-element-6e2a926{--width:25%;}.elementor-1234 .elementor-element.elementor-element-de5bc2b{--width:25%;}.elementor-1234 .elementor-element.elementor-element-1202ff3{--width:100%;}.elementor-1234 .elementor-element.elementor-element-40ef89b{--width:100%;}.elementor-1234 .elementor-element.elementor-element-978e5c7{--width:100%;}.elementor-1234 .elementor-element.elementor-element-e78b6cd{--width:100%;}.elementor-1234 .elementor-element.elementor-element-31b88f5{--width:100%;}.elementor-1234 .elementor-element.elementor-element-25445a1{--width:100%;}.elementor-1234 .elementor-element.elementor-element-f642b5c{--width:100%;}.elementor-1234 .elementor-element.elementor-element-6eec3ef{--width:100%;}}@media(max-width:1366px){.elementor-1234 .elementor-element.elementor-element-c76712d{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-1202ff3{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-40ef89b{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-978e5c7{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-e78b6cd{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-31b88f5{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-25445a1{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-f642b5c{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-6eec3ef{--grid-auto-flow:row;}}@media(max-width:1024px){.elementor-1234 .elementor-element.elementor-element-c76712d{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-1202ff3{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-40ef89b{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-978e5c7{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-e78b6cd{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-31b88f5{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-25445a1{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-f642b5c{--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-6eec3ef{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-1234 .elementor-element.elementor-element-c76712d{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-1202ff3{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-40ef89b{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-978e5c7{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-e78b6cd{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-31b88f5{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-25445a1{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-f642b5c{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1234 .elementor-element.elementor-element-6eec3ef{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for text-editor, class: .elementor-element-5574286 */.hero-dokumen {
  width: 100%;
  padding: 24px 32px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.hero-content h1 {
  margin: 0 0 8px 0;
  color: #0046d5;
  font-size: 42px;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.5px;
}

.hero-content p {
  margin: 0;
  max-width: 620px;
  color: #2f3b52;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bf5a675 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab75835 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1e588bd */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d81bee0 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a78bf70 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8e8a982 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-61c9516 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04bfb8a */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* HERO UTAMA */
.kalender-hero {
  width: 100%;
  min-height: 210px;
  position: relative;
  overflow: hidden;
  padding: 42px 70px;
  display: grid;
  grid-template-columns: 1fr 42px;
  align-items: center;
  gap: 40px;
  background:
    radial-gradient(circle at 78% 40%, rgba(0, 87, 217, 0.12), transparent 28%),
    linear-gradient(135deg, #f8fbff 0%, #eef6ff 55%, #ffffff 100%);
  border-bottom: 1px solid #dbe7f5;
}

/* Dekorasi background */
.kalender-hero::before {
  content: "";
  position: absolute;
  left: -80px;
  bottom: -120px;
  width: 320px;
  height: 230px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

.kalender-hero::after {
  content: "";
  position: absolute;
  right: 260px;
  bottom: -120px;
  width: 420px;
  height: 240px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

/* KONTEN KIRI */
.kalender-content {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 80px 1fr;
  align-items: center;
  gap: 26px;
}

.kalender-icon {
  width: 70px;
  height: 70px;
  background: linear-gradient(135deg, #07348f, #0057d9);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 24px rgba(0, 87, 217, 0.28);
}

.kalender-icon svg {
  width: 38px;
  height: 38px;
}

.kalender-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kalender-text h1 {
  color: #071b4d;
  font-size: 40px;
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -1px;
  margin-bottom: 8px;
}

.kalender-text h2 {
  color: #ff5a00;
  font-size: 26px;
  font-weight: 900;
  line-height: 1.3;
  margin-bottom: 14px;
}

.kalender-text p {
  max-width: 620px;
  color: #475569;
  font-size: 17px;
  line-height: 1.7;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* VISUAL KANAN */
.kalender-visual {
  position: relative;
  z-index: 2;
  height: 150px;
}

/* Lingkaran dekorasi */
.circle-bg {
  position: absolute;
  border-radius: 50%;
  background: rgba(0, 87, 217, 0.09);
}

.circle-one {
  width: 180px;
  height: 180px;
  left: 20px;
  top: -28px;
}

.circle-two {
  width: 120px;
  height: 120px;
  right: 22px;
  top: 8px;
}

/* Kalender ilustrasi */
.calendar-illustration {
  position: absolute;
  right: 105px;
  bottom: -6px;
  width: 180px;
  height: 145px;
  transform: rotate(5deg);
}

.calendar-rings {
  position: absolute;
  top: -6px;
  left: 30px;
  right: 20px;
  height: 22px;
  display: flex;
  justify-content: space-between;
  z-index: 3;
}

.calendar-rings span {
  width: 9px;
  height: 28px;
  border: 3px solid #8bbdff;
  border-bottom: none;
  border-radius: 999px 999px 0 0;
}

.calendar-body {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 170px;
  height: 125px;
  background: #ffffff;
  border-radius: 10px;
  border-top: 18px solid #cfe3ff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.12);
}

.calendar-body::after {
  content: "";
  position: absolute;
  right: -28px;
  bottom: 0;
  width: 32px;
  height: 110px;
  background: #bfd9fb;
  clip-path: polygon(0 0, 100% 14%, 100% 100%, 0 100%);
  border-radius: 0 8px 8px 0;
}

.calendar-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  padding: 18px 20px;
}

.calendar-grid span {
  height: 16px;
  background: #e5efff;
  border-radius: 4px;
  color: #8bbdff;
  font-size: 15px;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
}

.calendar-grid span.checked {
  background: #eaf3ff;
  color: #93c5fd;
}

.calendar-grid span.active {
  background: #ff8a00;
}

/* Daun dekorasi */
.decor-leaf {
  position: absolute;
  bottom: 4px;
  width: 60px;
  height: 80px;
  opacity: 0.45;
}

.decor-leaf::before,
.decor-leaf::after {
  content: "";
  position: absolute;
  background: #8bbdff;
  border-radius: 50% 0 50% 50%;
}

.decor-leaf::before {
  width: 42px;
  height: 24px;
  top: 14px;
  left: 0;
  transform: rotate(210deg);
}

.decor-leaf::after {
  width: 42px;
  height: 24px;
  top: 38px;
  right: 0;
  transform: rotate(-20deg);
}

.leaf-left {
  left: 54px;
}

.leaf-right {
  right: 18px;
}

/* Hover animasi */
.calendar-illustration {
  transition: transform 0.35s ease;
}

.kalender-hero:hover .calendar-illustration {
  transform: rotate(5deg) translateY(-6px);
}

/* TABLET */
@media (max-width: 992px) {
  .kalender-hero {
    grid-template-columns: 1fr;
    padding: 40px 36px;
    gap: 26px;
  }

  .kalender-text h1 {
    font-size: 44px;
  }

  .kalender-text h2 {
    font-size: 23px;
  }

  .kalender-text p {
    max-width: 100%;
  }

  .kalender-visual {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-hero {
    padding: 32px 20px 26px;
    min-height: auto;
  }

  .kalender-content {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .kalender-icon {
    width: 62px;
    height: 62px;
  }

  .kalender-icon svg {
    width: 34px;
    height: 34px;
  }

  .kalender-text h1 {
    font-size: 36px;
    line-height: 1.12;
    letter-spacing: -0.5px;
  }

  .kalender-text h2 {
    font-size: 19px;
  }

  .kalender-text p {
    font-size: 14px;
    line-height: 1.65;
    text-align: justify;
  }

  .kalender-visual {
    height: 135px;
    transform: scale(0.82);
    transform-origin: top center;
    margin-top: 10px;
  }
}

/* EXTRA SMALL MOBILE */
@media (max-width: 380px) {
  .kalender-hero {
    padding: 28px 16px 24px;
  }

  .kalender-text h1 {
    font-size: 32px;
  }

  .kalender-text h2 {
    font-size: 17px;
  }

  .kalender-visual {
    transform: scale(0.72);
    height: 120px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-90eabb4 */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-summary-section {
  width: 100%;
  padding: 22px 24px;
  background: #f8fbff;
}

/* Wrapper */
.kalender-summary-wrapper {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

/* Card */
.summary-card {
  background: #ffffff;
  border: 1px solid #e1eaf6;
  border-radius: 14px;
  padding: 20px 22px;
  min-height: 96px;
  display: grid;
  grid-template-columns: 76px 1fr;
  align-items: center;
  gap: 18px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.summary-card:hover {
  transform: translateY(-6px);
  border-color: #93c5fd;
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.14);
}

/* Icon */
.summary-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  flex-shrink: 0;
}

.summary-icon svg {
  width: 30px;
  height: 30px;
}

.summary-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Warna icon */
.summary-icon.blue {
  background: #eaf3ff;
  color: #0057d9;
}

.summary-icon.orange {
  background: #fff0df;
  color: #ff7900;
}

.summary-icon.green {
  background: #e9f8ef;
  color: #16a34a;
}

.summary-icon.purple {
  background: #f2e9ff;
  color: #6d4fd8;
}

.summary-icon.cyan {
  background: #e7f8fb;
  color: #0891b2;
}

/* Konten */
.summary-content h3 {
  color: #0057d9;
  font-size: 36px;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 4px;
}

.summary-content p {
  color: #071b4d;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.summary-content .orange-text {
  color: #ff7900;
}

.summary-content .green-text {
  color: #16a34a;
}

.summary-content .purple-text {
  color: #6d4fd8;
}

.summary-content .cyan-text {
  color: #0891b2;
}

/* Tablet */
@media (max-width: 1100px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Tablet kecil */
@media (max-width: 768px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .summary-card {
    min-height: auto;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-summary-section {
    padding: 16px;
  }

  .kalender-summary-wrapper {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .summary-card {
    grid-template-columns: 64px 1fr;
    padding: 18px;
    border-radius: 12px;
    gap: 16px;
  }

  .summary-icon {
    width: 58px;
    height: 58px;
  }

  .summary-icon svg {
    width: 32px;
    height: 32px;
  }

  .summary-content h3 {
    font-size: 30px;
  }

  .summary-content p {
    font-size: 14px;
    line-height: 1.4;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-summary-section {
    padding: 12px;
  }

  .summary-card {
    padding: 16px;
  }

  .summary-content h3 {
    font-size: 28px;
  }

  .summary-content p {
    font-size: 13.5px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-df39d4f */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* SECTION */
.kalender-detail-section {
  width: 100%;
  padding: 24px;
  background: #f8fbff;
}

/* WRAPPER */
.kalender-detail-wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

/* CARD */
.agenda-card {
  --theme: #0057d9;
  --soft: #eef5ff;

  background: #ffffff;
  border: 1px solid #dbe7f5;
  border-left: 5px solid var(--theme);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.agenda-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.13);
}

/* VARIAN WARNA */
.agenda-card.blue {
  --theme: #0057d9;
  --soft: #eef5ff;
}

.agenda-card.orange {
  --theme: #ff5a00;
  --soft: #fff3e8;
}

.agenda-card.green {
  --theme: #16a34a;
  --soft: #ecfdf5;
}

.agenda-card.cyan {
  --theme: #0891b2;
  --soft: #ecfeff;
}

.agenda-card.purple {
  --theme: #6d4fd8;
  --soft: #f3e8ff;
}

.agenda-card.yellow {
  --theme: #e6a000;
  --soft: #fff8db;
}

/* CARD FULL WIDTH */
.full-card {
  grid-column: 1 / -1;
}

/* HEADER */
.agenda-header {
  min-height: 66px;
  background: linear-gradient(135deg, var(--soft) 0%, #ffffff 100%);
  padding: 16px 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid #e5edf8;
}

.agenda-number {
  width: 34px;
  height: 34px;
  background: var(--theme);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 900;
  flex-shrink: 0;
  box-shadow: 0 7px 16px rgba(15, 23, 42, 0.16);
}

.agenda-icon {
  width: 36px;
  height: 36px;
  color: var(--theme);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.agenda-icon svg {
  width: 29px;
  height: 29px;
}

.agenda-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.agenda-header h2 {
  color: var(--theme);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.3;
}

/* LIST */
.agenda-list {
  padding: 14px 22px 18px;
}

.agenda-item {
  display: grid;
  grid-template-columns: 20px 1fr 280px;
  gap: 12px;
  align-items: start;
  padding: 11px 0;
  border-bottom: 1px solid #edf2f7;
}

.agenda-item:last-child {
  border-bottom: none;
}

.agenda-dot {
  width: 10px;
  height: 10px;
  background: var(--theme);
  border-radius: 50%;
  margin-top: 6px;
  position: relative;
}

.agenda-item:not(:last-child) .agenda-dot::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 13px;
  width: 2px;
  height: 28px;
  background: var(--theme);
  opacity: 0.5;
  transform: translateX(-50%);
}

.agenda-item p {
  color: #1e293b;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.agenda-item span {
  color: #0f172a;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 500;
  text-align: left;
}

/* KHUSUS CARD LAIN-LAIN */
.two-column-list .agenda-item {
  grid-template-columns: 20px 1fr 420px;
}

/* TABLET */
@media (max-width: 1100px) {
  .kalender-detail-wrapper {
    grid-template-columns: 1fr;
  }

  .full-card {
    grid-column: auto;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 20px 1fr 260px;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-detail-section {
    padding: 16px;
  }

  .kalender-detail-wrapper {
    gap: 16px;
  }

  .agenda-card {
    border-left-width: 4px;
    border-radius: 12px;
  }

  .agenda-header {
    padding: 15px 16px;
    gap: 10px;
    align-items: flex-start;
  }

  .agenda-number {
    width: 30px;
    height: 30px;
    font-size: 14px;
  }

  .agenda-icon {
    width: 30px;
    height: 30px;
  }

  .agenda-icon svg {
    width: 25px;
    height: 25px;
  }

  .agenda-header h2 {
    font-size: 16px;
  }

  .agenda-list {
    padding: 12px 16px 16px;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 18px 1fr;
    gap: 10px;
  }

  .agenda-item span {
    grid-column: 2;
    font-size: 13px;
    color: #334155;
  }

  .agenda-item p {
    font-size: 13.5px;
    line-height: 1.6;
    text-align: justify;
  }

  .agenda-dot {
    width: 9px;
    height: 9px;
  }

  .agenda-item:not(:last-child) .agenda-dot::after {
    height: 42px;
  }
}

/* EXTRA SMALL */
@media (max-width: 380px) {
  .kalender-detail-section {
    padding: 12px;
  }

  .agenda-header h2 {
    font-size: 15px;
  }

  .agenda-item p,
  .agenda-item span {
    font-size: 12.8px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-23c08fc */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-note-section {
  width: 100%;
  padding: 18px 24px;
  background: #f8fbff;
}

/* Card catatan */
.kalender-note-card {
  width: 100%;
  min-height: 48px;
  background: linear-gradient(135deg, #eef6ff 0%, #ffffff 100%);
  border: 1px solid #dbeafe;
  border-radius: 12px;
  padding: 12px 24px;
  display: grid;
  grid-template-columns: 30px 1fr;
  align-items: center;
  gap: 14px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.kalender-note-card:hover {
  transform: translateY(-4px);
  border-color: #93c5fd;
  box-shadow: 0 14px 30px rgba(0, 87, 217, 0.12);
}

/* Icon */
.kalender-note-icon {
  width: 24px;
  height: 24px;
  color: #0057d9;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kalender-note-icon svg {
  width: 22px;
  height: 22px;
}

.kalender-note-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Teks */
.kalender-note-card p {
  color: #07348f;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* Tablet */
@media (max-width: 768px) {
  .kalender-note-card {
    padding: 14px 18px;
    grid-template-columns: 28px 1fr;
  }

  .kalender-note-card p {
    font-size: 13.5px;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-note-section {
    padding: 14px 16px;
  }

  .kalender-note-card {
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: flex-start;
    padding: 18px;
    border-radius: 10px;
  }

  .kalender-note-icon {
    width: 26px;
    height: 26px;
  }

  .kalender-note-icon svg {
    width: 24px;
    height: 24px;
  }

  .kalender-note-card p {
    font-size: 13px;
    line-height: 1.65;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-note-section {
    padding: 12px;
  }

  .kalender-note-card {
    padding: 16px;
  }

  .kalender-note-card p {
    font-size: 12.8px;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bf5a675 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab75835 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1e588bd */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d81bee0 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a78bf70 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8e8a982 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-61c9516 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04bfb8a */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* HERO UTAMA */
.kalender-hero {
  width: 100%;
  min-height: 210px;
  position: relative;
  overflow: hidden;
  padding: 42px 70px;
  display: grid;
  grid-template-columns: 1fr 42px;
  align-items: center;
  gap: 40px;
  background:
    radial-gradient(circle at 78% 40%, rgba(0, 87, 217, 0.12), transparent 28%),
    linear-gradient(135deg, #f8fbff 0%, #eef6ff 55%, #ffffff 100%);
  border-bottom: 1px solid #dbe7f5;
}

/* Dekorasi background */
.kalender-hero::before {
  content: "";
  position: absolute;
  left: -80px;
  bottom: -120px;
  width: 320px;
  height: 230px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

.kalender-hero::after {
  content: "";
  position: absolute;
  right: 260px;
  bottom: -120px;
  width: 420px;
  height: 240px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

/* KONTEN KIRI */
.kalender-content {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 80px 1fr;
  align-items: center;
  gap: 26px;
}

.kalender-icon {
  width: 70px;
  height: 70px;
  background: linear-gradient(135deg, #07348f, #0057d9);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 24px rgba(0, 87, 217, 0.28);
}

.kalender-icon svg {
  width: 38px;
  height: 38px;
}

.kalender-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kalender-text h1 {
  color: #071b4d;
  font-size: 40px;
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -1px;
  margin-bottom: 8px;
}

.kalender-text h2 {
  color: #ff5a00;
  font-size: 26px;
  font-weight: 900;
  line-height: 1.3;
  margin-bottom: 14px;
}

.kalender-text p {
  max-width: 620px;
  color: #475569;
  font-size: 17px;
  line-height: 1.7;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* VISUAL KANAN */
.kalender-visual {
  position: relative;
  z-index: 2;
  height: 150px;
}

/* Lingkaran dekorasi */
.circle-bg {
  position: absolute;
  border-radius: 50%;
  background: rgba(0, 87, 217, 0.09);
}

.circle-one {
  width: 180px;
  height: 180px;
  left: 20px;
  top: -28px;
}

.circle-two {
  width: 120px;
  height: 120px;
  right: 22px;
  top: 8px;
}

/* Kalender ilustrasi */
.calendar-illustration {
  position: absolute;
  right: 105px;
  bottom: -6px;
  width: 180px;
  height: 145px;
  transform: rotate(5deg);
}

.calendar-rings {
  position: absolute;
  top: -6px;
  left: 30px;
  right: 20px;
  height: 22px;
  display: flex;
  justify-content: space-between;
  z-index: 3;
}

.calendar-rings span {
  width: 9px;
  height: 28px;
  border: 3px solid #8bbdff;
  border-bottom: none;
  border-radius: 999px 999px 0 0;
}

.calendar-body {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 170px;
  height: 125px;
  background: #ffffff;
  border-radius: 10px;
  border-top: 18px solid #cfe3ff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.12);
}

.calendar-body::after {
  content: "";
  position: absolute;
  right: -28px;
  bottom: 0;
  width: 32px;
  height: 110px;
  background: #bfd9fb;
  clip-path: polygon(0 0, 100% 14%, 100% 100%, 0 100%);
  border-radius: 0 8px 8px 0;
}

.calendar-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  padding: 18px 20px;
}

.calendar-grid span {
  height: 16px;
  background: #e5efff;
  border-radius: 4px;
  color: #8bbdff;
  font-size: 15px;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
}

.calendar-grid span.checked {
  background: #eaf3ff;
  color: #93c5fd;
}

.calendar-grid span.active {
  background: #ff8a00;
}

/* Daun dekorasi */
.decor-leaf {
  position: absolute;
  bottom: 4px;
  width: 60px;
  height: 80px;
  opacity: 0.45;
}

.decor-leaf::before,
.decor-leaf::after {
  content: "";
  position: absolute;
  background: #8bbdff;
  border-radius: 50% 0 50% 50%;
}

.decor-leaf::before {
  width: 42px;
  height: 24px;
  top: 14px;
  left: 0;
  transform: rotate(210deg);
}

.decor-leaf::after {
  width: 42px;
  height: 24px;
  top: 38px;
  right: 0;
  transform: rotate(-20deg);
}

.leaf-left {
  left: 54px;
}

.leaf-right {
  right: 18px;
}

/* Hover animasi */
.calendar-illustration {
  transition: transform 0.35s ease;
}

.kalender-hero:hover .calendar-illustration {
  transform: rotate(5deg) translateY(-6px);
}

/* TABLET */
@media (max-width: 992px) {
  .kalender-hero {
    grid-template-columns: 1fr;
    padding: 40px 36px;
    gap: 26px;
  }

  .kalender-text h1 {
    font-size: 44px;
  }

  .kalender-text h2 {
    font-size: 23px;
  }

  .kalender-text p {
    max-width: 100%;
  }

  .kalender-visual {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-hero {
    padding: 32px 20px 26px;
    min-height: auto;
  }

  .kalender-content {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .kalender-icon {
    width: 62px;
    height: 62px;
  }

  .kalender-icon svg {
    width: 34px;
    height: 34px;
  }

  .kalender-text h1 {
    font-size: 36px;
    line-height: 1.12;
    letter-spacing: -0.5px;
  }

  .kalender-text h2 {
    font-size: 19px;
  }

  .kalender-text p {
    font-size: 14px;
    line-height: 1.65;
    text-align: justify;
  }

  .kalender-visual {
    height: 135px;
    transform: scale(0.82);
    transform-origin: top center;
    margin-top: 10px;
  }
}

/* EXTRA SMALL MOBILE */
@media (max-width: 380px) {
  .kalender-hero {
    padding: 28px 16px 24px;
  }

  .kalender-text h1 {
    font-size: 32px;
  }

  .kalender-text h2 {
    font-size: 17px;
  }

  .kalender-visual {
    transform: scale(0.72);
    height: 120px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-90eabb4 */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-summary-section {
  width: 100%;
  padding: 22px 24px;
  background: #f8fbff;
}

/* Wrapper */
.kalender-summary-wrapper {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

/* Card */
.summary-card {
  background: #ffffff;
  border: 1px solid #e1eaf6;
  border-radius: 14px;
  padding: 20px 22px;
  min-height: 96px;
  display: grid;
  grid-template-columns: 76px 1fr;
  align-items: center;
  gap: 18px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.summary-card:hover {
  transform: translateY(-6px);
  border-color: #93c5fd;
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.14);
}

/* Icon */
.summary-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  flex-shrink: 0;
}

.summary-icon svg {
  width: 30px;
  height: 30px;
}

.summary-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Warna icon */
.summary-icon.blue {
  background: #eaf3ff;
  color: #0057d9;
}

.summary-icon.orange {
  background: #fff0df;
  color: #ff7900;
}

.summary-icon.green {
  background: #e9f8ef;
  color: #16a34a;
}

.summary-icon.purple {
  background: #f2e9ff;
  color: #6d4fd8;
}

.summary-icon.cyan {
  background: #e7f8fb;
  color: #0891b2;
}

/* Konten */
.summary-content h3 {
  color: #0057d9;
  font-size: 36px;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 4px;
}

.summary-content p {
  color: #071b4d;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.summary-content .orange-text {
  color: #ff7900;
}

.summary-content .green-text {
  color: #16a34a;
}

.summary-content .purple-text {
  color: #6d4fd8;
}

.summary-content .cyan-text {
  color: #0891b2;
}

/* Tablet */
@media (max-width: 1100px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Tablet kecil */
@media (max-width: 768px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .summary-card {
    min-height: auto;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-summary-section {
    padding: 16px;
  }

  .kalender-summary-wrapper {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .summary-card {
    grid-template-columns: 64px 1fr;
    padding: 18px;
    border-radius: 12px;
    gap: 16px;
  }

  .summary-icon {
    width: 58px;
    height: 58px;
  }

  .summary-icon svg {
    width: 32px;
    height: 32px;
  }

  .summary-content h3 {
    font-size: 30px;
  }

  .summary-content p {
    font-size: 14px;
    line-height: 1.4;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-summary-section {
    padding: 12px;
  }

  .summary-card {
    padding: 16px;
  }

  .summary-content h3 {
    font-size: 28px;
  }

  .summary-content p {
    font-size: 13.5px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-df39d4f */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* SECTION */
.kalender-detail-section {
  width: 100%;
  padding: 24px;
  background: #f8fbff;
}

/* WRAPPER */
.kalender-detail-wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

/* CARD */
.agenda-card {
  --theme: #0057d9;
  --soft: #eef5ff;

  background: #ffffff;
  border: 1px solid #dbe7f5;
  border-left: 5px solid var(--theme);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.agenda-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.13);
}

/* VARIAN WARNA */
.agenda-card.blue {
  --theme: #0057d9;
  --soft: #eef5ff;
}

.agenda-card.orange {
  --theme: #ff5a00;
  --soft: #fff3e8;
}

.agenda-card.green {
  --theme: #16a34a;
  --soft: #ecfdf5;
}

.agenda-card.cyan {
  --theme: #0891b2;
  --soft: #ecfeff;
}

.agenda-card.purple {
  --theme: #6d4fd8;
  --soft: #f3e8ff;
}

.agenda-card.yellow {
  --theme: #e6a000;
  --soft: #fff8db;
}

/* CARD FULL WIDTH */
.full-card {
  grid-column: 1 / -1;
}

/* HEADER */
.agenda-header {
  min-height: 66px;
  background: linear-gradient(135deg, var(--soft) 0%, #ffffff 100%);
  padding: 16px 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid #e5edf8;
}

.agenda-number {
  width: 34px;
  height: 34px;
  background: var(--theme);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 900;
  flex-shrink: 0;
  box-shadow: 0 7px 16px rgba(15, 23, 42, 0.16);
}

.agenda-icon {
  width: 36px;
  height: 36px;
  color: var(--theme);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.agenda-icon svg {
  width: 29px;
  height: 29px;
}

.agenda-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.agenda-header h2 {
  color: var(--theme);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.3;
}

/* LIST */
.agenda-list {
  padding: 14px 22px 18px;
}

.agenda-item {
  display: grid;
  grid-template-columns: 20px 1fr 280px;
  gap: 12px;
  align-items: start;
  padding: 11px 0;
  border-bottom: 1px solid #edf2f7;
}

.agenda-item:last-child {
  border-bottom: none;
}

.agenda-dot {
  width: 10px;
  height: 10px;
  background: var(--theme);
  border-radius: 50%;
  margin-top: 6px;
  position: relative;
}

.agenda-item:not(:last-child) .agenda-dot::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 13px;
  width: 2px;
  height: 28px;
  background: var(--theme);
  opacity: 0.5;
  transform: translateX(-50%);
}

.agenda-item p {
  color: #1e293b;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.agenda-item span {
  color: #0f172a;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 500;
  text-align: left;
}

/* KHUSUS CARD LAIN-LAIN */
.two-column-list .agenda-item {
  grid-template-columns: 20px 1fr 420px;
}

/* TABLET */
@media (max-width: 1100px) {
  .kalender-detail-wrapper {
    grid-template-columns: 1fr;
  }

  .full-card {
    grid-column: auto;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 20px 1fr 260px;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-detail-section {
    padding: 16px;
  }

  .kalender-detail-wrapper {
    gap: 16px;
  }

  .agenda-card {
    border-left-width: 4px;
    border-radius: 12px;
  }

  .agenda-header {
    padding: 15px 16px;
    gap: 10px;
    align-items: flex-start;
  }

  .agenda-number {
    width: 30px;
    height: 30px;
    font-size: 14px;
  }

  .agenda-icon {
    width: 30px;
    height: 30px;
  }

  .agenda-icon svg {
    width: 25px;
    height: 25px;
  }

  .agenda-header h2 {
    font-size: 16px;
  }

  .agenda-list {
    padding: 12px 16px 16px;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 18px 1fr;
    gap: 10px;
  }

  .agenda-item span {
    grid-column: 2;
    font-size: 13px;
    color: #334155;
  }

  .agenda-item p {
    font-size: 13.5px;
    line-height: 1.6;
    text-align: justify;
  }

  .agenda-dot {
    width: 9px;
    height: 9px;
  }

  .agenda-item:not(:last-child) .agenda-dot::after {
    height: 42px;
  }
}

/* EXTRA SMALL */
@media (max-width: 380px) {
  .kalender-detail-section {
    padding: 12px;
  }

  .agenda-header h2 {
    font-size: 15px;
  }

  .agenda-item p,
  .agenda-item span {
    font-size: 12.8px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-23c08fc */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-note-section {
  width: 100%;
  padding: 18px 24px;
  background: #f8fbff;
}

/* Card catatan */
.kalender-note-card {
  width: 100%;
  min-height: 48px;
  background: linear-gradient(135deg, #eef6ff 0%, #ffffff 100%);
  border: 1px solid #dbeafe;
  border-radius: 12px;
  padding: 12px 24px;
  display: grid;
  grid-template-columns: 30px 1fr;
  align-items: center;
  gap: 14px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.kalender-note-card:hover {
  transform: translateY(-4px);
  border-color: #93c5fd;
  box-shadow: 0 14px 30px rgba(0, 87, 217, 0.12);
}

/* Icon */
.kalender-note-icon {
  width: 24px;
  height: 24px;
  color: #0057d9;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kalender-note-icon svg {
  width: 22px;
  height: 22px;
}

.kalender-note-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Teks */
.kalender-note-card p {
  color: #07348f;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* Tablet */
@media (max-width: 768px) {
  .kalender-note-card {
    padding: 14px 18px;
    grid-template-columns: 28px 1fr;
  }

  .kalender-note-card p {
    font-size: 13.5px;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-note-section {
    padding: 14px 16px;
  }

  .kalender-note-card {
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: flex-start;
    padding: 18px;
    border-radius: 10px;
  }

  .kalender-note-icon {
    width: 26px;
    height: 26px;
  }

  .kalender-note-icon svg {
    width: 24px;
    height: 24px;
  }

  .kalender-note-card p {
    font-size: 13px;
    line-height: 1.65;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-note-section {
    padding: 12px;
  }

  .kalender-note-card {
    padding: 16px;
  }

  .kalender-note-card p {
    font-size: 12.8px;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bf5a675 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab75835 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1e588bd */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d81bee0 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a78bf70 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8e8a982 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-61c9516 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04bfb8a */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* HERO UTAMA */
.kalender-hero {
  width: 100%;
  min-height: 210px;
  position: relative;
  overflow: hidden;
  padding: 42px 70px;
  display: grid;
  grid-template-columns: 1fr 42px;
  align-items: center;
  gap: 40px;
  background:
    radial-gradient(circle at 78% 40%, rgba(0, 87, 217, 0.12), transparent 28%),
    linear-gradient(135deg, #f8fbff 0%, #eef6ff 55%, #ffffff 100%);
  border-bottom: 1px solid #dbe7f5;
}

/* Dekorasi background */
.kalender-hero::before {
  content: "";
  position: absolute;
  left: -80px;
  bottom: -120px;
  width: 320px;
  height: 230px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

.kalender-hero::after {
  content: "";
  position: absolute;
  right: 260px;
  bottom: -120px;
  width: 420px;
  height: 240px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

/* KONTEN KIRI */
.kalender-content {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 80px 1fr;
  align-items: center;
  gap: 26px;
}

.kalender-icon {
  width: 70px;
  height: 70px;
  background: linear-gradient(135deg, #07348f, #0057d9);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 24px rgba(0, 87, 217, 0.28);
}

.kalender-icon svg {
  width: 38px;
  height: 38px;
}

.kalender-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kalender-text h1 {
  color: #071b4d;
  font-size: 40px;
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -1px;
  margin-bottom: 8px;
}

.kalender-text h2 {
  color: #ff5a00;
  font-size: 26px;
  font-weight: 900;
  line-height: 1.3;
  margin-bottom: 14px;
}

.kalender-text p {
  max-width: 620px;
  color: #475569;
  font-size: 17px;
  line-height: 1.7;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* VISUAL KANAN */
.kalender-visual {
  position: relative;
  z-index: 2;
  height: 150px;
}

/* Lingkaran dekorasi */
.circle-bg {
  position: absolute;
  border-radius: 50%;
  background: rgba(0, 87, 217, 0.09);
}

.circle-one {
  width: 180px;
  height: 180px;
  left: 20px;
  top: -28px;
}

.circle-two {
  width: 120px;
  height: 120px;
  right: 22px;
  top: 8px;
}

/* Kalender ilustrasi */
.calendar-illustration {
  position: absolute;
  right: 105px;
  bottom: -6px;
  width: 180px;
  height: 145px;
  transform: rotate(5deg);
}

.calendar-rings {
  position: absolute;
  top: -6px;
  left: 30px;
  right: 20px;
  height: 22px;
  display: flex;
  justify-content: space-between;
  z-index: 3;
}

.calendar-rings span {
  width: 9px;
  height: 28px;
  border: 3px solid #8bbdff;
  border-bottom: none;
  border-radius: 999px 999px 0 0;
}

.calendar-body {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 170px;
  height: 125px;
  background: #ffffff;
  border-radius: 10px;
  border-top: 18px solid #cfe3ff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.12);
}

.calendar-body::after {
  content: "";
  position: absolute;
  right: -28px;
  bottom: 0;
  width: 32px;
  height: 110px;
  background: #bfd9fb;
  clip-path: polygon(0 0, 100% 14%, 100% 100%, 0 100%);
  border-radius: 0 8px 8px 0;
}

.calendar-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  padding: 18px 20px;
}

.calendar-grid span {
  height: 16px;
  background: #e5efff;
  border-radius: 4px;
  color: #8bbdff;
  font-size: 15px;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
}

.calendar-grid span.checked {
  background: #eaf3ff;
  color: #93c5fd;
}

.calendar-grid span.active {
  background: #ff8a00;
}

/* Daun dekorasi */
.decor-leaf {
  position: absolute;
  bottom: 4px;
  width: 60px;
  height: 80px;
  opacity: 0.45;
}

.decor-leaf::before,
.decor-leaf::after {
  content: "";
  position: absolute;
  background: #8bbdff;
  border-radius: 50% 0 50% 50%;
}

.decor-leaf::before {
  width: 42px;
  height: 24px;
  top: 14px;
  left: 0;
  transform: rotate(210deg);
}

.decor-leaf::after {
  width: 42px;
  height: 24px;
  top: 38px;
  right: 0;
  transform: rotate(-20deg);
}

.leaf-left {
  left: 54px;
}

.leaf-right {
  right: 18px;
}

/* Hover animasi */
.calendar-illustration {
  transition: transform 0.35s ease;
}

.kalender-hero:hover .calendar-illustration {
  transform: rotate(5deg) translateY(-6px);
}

/* TABLET */
@media (max-width: 992px) {
  .kalender-hero {
    grid-template-columns: 1fr;
    padding: 40px 36px;
    gap: 26px;
  }

  .kalender-text h1 {
    font-size: 44px;
  }

  .kalender-text h2 {
    font-size: 23px;
  }

  .kalender-text p {
    max-width: 100%;
  }

  .kalender-visual {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-hero {
    padding: 32px 20px 26px;
    min-height: auto;
  }

  .kalender-content {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .kalender-icon {
    width: 62px;
    height: 62px;
  }

  .kalender-icon svg {
    width: 34px;
    height: 34px;
  }

  .kalender-text h1 {
    font-size: 36px;
    line-height: 1.12;
    letter-spacing: -0.5px;
  }

  .kalender-text h2 {
    font-size: 19px;
  }

  .kalender-text p {
    font-size: 14px;
    line-height: 1.65;
    text-align: justify;
  }

  .kalender-visual {
    height: 135px;
    transform: scale(0.82);
    transform-origin: top center;
    margin-top: 10px;
  }
}

/* EXTRA SMALL MOBILE */
@media (max-width: 380px) {
  .kalender-hero {
    padding: 28px 16px 24px;
  }

  .kalender-text h1 {
    font-size: 32px;
  }

  .kalender-text h2 {
    font-size: 17px;
  }

  .kalender-visual {
    transform: scale(0.72);
    height: 120px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-90eabb4 */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-summary-section {
  width: 100%;
  padding: 22px 24px;
  background: #f8fbff;
}

/* Wrapper */
.kalender-summary-wrapper {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

/* Card */
.summary-card {
  background: #ffffff;
  border: 1px solid #e1eaf6;
  border-radius: 14px;
  padding: 20px 22px;
  min-height: 96px;
  display: grid;
  grid-template-columns: 76px 1fr;
  align-items: center;
  gap: 18px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.summary-card:hover {
  transform: translateY(-6px);
  border-color: #93c5fd;
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.14);
}

/* Icon */
.summary-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  flex-shrink: 0;
}

.summary-icon svg {
  width: 30px;
  height: 30px;
}

.summary-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Warna icon */
.summary-icon.blue {
  background: #eaf3ff;
  color: #0057d9;
}

.summary-icon.orange {
  background: #fff0df;
  color: #ff7900;
}

.summary-icon.green {
  background: #e9f8ef;
  color: #16a34a;
}

.summary-icon.purple {
  background: #f2e9ff;
  color: #6d4fd8;
}

.summary-icon.cyan {
  background: #e7f8fb;
  color: #0891b2;
}

/* Konten */
.summary-content h3 {
  color: #0057d9;
  font-size: 36px;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 4px;
}

.summary-content p {
  color: #071b4d;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.summary-content .orange-text {
  color: #ff7900;
}

.summary-content .green-text {
  color: #16a34a;
}

.summary-content .purple-text {
  color: #6d4fd8;
}

.summary-content .cyan-text {
  color: #0891b2;
}

/* Tablet */
@media (max-width: 1100px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Tablet kecil */
@media (max-width: 768px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .summary-card {
    min-height: auto;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-summary-section {
    padding: 16px;
  }

  .kalender-summary-wrapper {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .summary-card {
    grid-template-columns: 64px 1fr;
    padding: 18px;
    border-radius: 12px;
    gap: 16px;
  }

  .summary-icon {
    width: 58px;
    height: 58px;
  }

  .summary-icon svg {
    width: 32px;
    height: 32px;
  }

  .summary-content h3 {
    font-size: 30px;
  }

  .summary-content p {
    font-size: 14px;
    line-height: 1.4;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-summary-section {
    padding: 12px;
  }

  .summary-card {
    padding: 16px;
  }

  .summary-content h3 {
    font-size: 28px;
  }

  .summary-content p {
    font-size: 13.5px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-df39d4f */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* SECTION */
.kalender-detail-section {
  width: 100%;
  padding: 24px;
  background: #f8fbff;
}

/* WRAPPER */
.kalender-detail-wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

/* CARD */
.agenda-card {
  --theme: #0057d9;
  --soft: #eef5ff;

  background: #ffffff;
  border: 1px solid #dbe7f5;
  border-left: 5px solid var(--theme);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.agenda-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.13);
}

/* VARIAN WARNA */
.agenda-card.blue {
  --theme: #0057d9;
  --soft: #eef5ff;
}

.agenda-card.orange {
  --theme: #ff5a00;
  --soft: #fff3e8;
}

.agenda-card.green {
  --theme: #16a34a;
  --soft: #ecfdf5;
}

.agenda-card.cyan {
  --theme: #0891b2;
  --soft: #ecfeff;
}

.agenda-card.purple {
  --theme: #6d4fd8;
  --soft: #f3e8ff;
}

.agenda-card.yellow {
  --theme: #e6a000;
  --soft: #fff8db;
}

/* CARD FULL WIDTH */
.full-card {
  grid-column: 1 / -1;
}

/* HEADER */
.agenda-header {
  min-height: 66px;
  background: linear-gradient(135deg, var(--soft) 0%, #ffffff 100%);
  padding: 16px 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid #e5edf8;
}

.agenda-number {
  width: 34px;
  height: 34px;
  background: var(--theme);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 900;
  flex-shrink: 0;
  box-shadow: 0 7px 16px rgba(15, 23, 42, 0.16);
}

.agenda-icon {
  width: 36px;
  height: 36px;
  color: var(--theme);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.agenda-icon svg {
  width: 29px;
  height: 29px;
}

.agenda-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.agenda-header h2 {
  color: var(--theme);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.3;
}

/* LIST */
.agenda-list {
  padding: 14px 22px 18px;
}

.agenda-item {
  display: grid;
  grid-template-columns: 20px 1fr 280px;
  gap: 12px;
  align-items: start;
  padding: 11px 0;
  border-bottom: 1px solid #edf2f7;
}

.agenda-item:last-child {
  border-bottom: none;
}

.agenda-dot {
  width: 10px;
  height: 10px;
  background: var(--theme);
  border-radius: 50%;
  margin-top: 6px;
  position: relative;
}

.agenda-item:not(:last-child) .agenda-dot::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 13px;
  width: 2px;
  height: 28px;
  background: var(--theme);
  opacity: 0.5;
  transform: translateX(-50%);
}

.agenda-item p {
  color: #1e293b;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.agenda-item span {
  color: #0f172a;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 500;
  text-align: left;
}

/* KHUSUS CARD LAIN-LAIN */
.two-column-list .agenda-item {
  grid-template-columns: 20px 1fr 420px;
}

/* TABLET */
@media (max-width: 1100px) {
  .kalender-detail-wrapper {
    grid-template-columns: 1fr;
  }

  .full-card {
    grid-column: auto;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 20px 1fr 260px;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-detail-section {
    padding: 16px;
  }

  .kalender-detail-wrapper {
    gap: 16px;
  }

  .agenda-card {
    border-left-width: 4px;
    border-radius: 12px;
  }

  .agenda-header {
    padding: 15px 16px;
    gap: 10px;
    align-items: flex-start;
  }

  .agenda-number {
    width: 30px;
    height: 30px;
    font-size: 14px;
  }

  .agenda-icon {
    width: 30px;
    height: 30px;
  }

  .agenda-icon svg {
    width: 25px;
    height: 25px;
  }

  .agenda-header h2 {
    font-size: 16px;
  }

  .agenda-list {
    padding: 12px 16px 16px;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 18px 1fr;
    gap: 10px;
  }

  .agenda-item span {
    grid-column: 2;
    font-size: 13px;
    color: #334155;
  }

  .agenda-item p {
    font-size: 13.5px;
    line-height: 1.6;
    text-align: justify;
  }

  .agenda-dot {
    width: 9px;
    height: 9px;
  }

  .agenda-item:not(:last-child) .agenda-dot::after {
    height: 42px;
  }
}

/* EXTRA SMALL */
@media (max-width: 380px) {
  .kalender-detail-section {
    padding: 12px;
  }

  .agenda-header h2 {
    font-size: 15px;
  }

  .agenda-item p,
  .agenda-item span {
    font-size: 12.8px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-23c08fc */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-note-section {
  width: 100%;
  padding: 18px 24px;
  background: #f8fbff;
}

/* Card catatan */
.kalender-note-card {
  width: 100%;
  min-height: 48px;
  background: linear-gradient(135deg, #eef6ff 0%, #ffffff 100%);
  border: 1px solid #dbeafe;
  border-radius: 12px;
  padding: 12px 24px;
  display: grid;
  grid-template-columns: 30px 1fr;
  align-items: center;
  gap: 14px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.kalender-note-card:hover {
  transform: translateY(-4px);
  border-color: #93c5fd;
  box-shadow: 0 14px 30px rgba(0, 87, 217, 0.12);
}

/* Icon */
.kalender-note-icon {
  width: 24px;
  height: 24px;
  color: #0057d9;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kalender-note-icon svg {
  width: 22px;
  height: 22px;
}

.kalender-note-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Teks */
.kalender-note-card p {
  color: #07348f;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* Tablet */
@media (max-width: 768px) {
  .kalender-note-card {
    padding: 14px 18px;
    grid-template-columns: 28px 1fr;
  }

  .kalender-note-card p {
    font-size: 13.5px;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-note-section {
    padding: 14px 16px;
  }

  .kalender-note-card {
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: flex-start;
    padding: 18px;
    border-radius: 10px;
  }

  .kalender-note-icon {
    width: 26px;
    height: 26px;
  }

  .kalender-note-icon svg {
    width: 24px;
    height: 24px;
  }

  .kalender-note-card p {
    font-size: 13px;
    line-height: 1.65;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-note-section {
    padding: 12px;
  }

  .kalender-note-card {
    padding: 16px;
  }

  .kalender-note-card p {
    font-size: 12.8px;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bf5a675 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab75835 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1e588bd */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d81bee0 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a78bf70 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8e8a982 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-61c9516 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04bfb8a */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* HERO UTAMA */
.kalender-hero {
  width: 100%;
  min-height: 210px;
  position: relative;
  overflow: hidden;
  padding: 42px 70px;
  display: grid;
  grid-template-columns: 1fr 42px;
  align-items: center;
  gap: 40px;
  background:
    radial-gradient(circle at 78% 40%, rgba(0, 87, 217, 0.12), transparent 28%),
    linear-gradient(135deg, #f8fbff 0%, #eef6ff 55%, #ffffff 100%);
  border-bottom: 1px solid #dbe7f5;
}

/* Dekorasi background */
.kalender-hero::before {
  content: "";
  position: absolute;
  left: -80px;
  bottom: -120px;
  width: 320px;
  height: 230px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

.kalender-hero::after {
  content: "";
  position: absolute;
  right: 260px;
  bottom: -120px;
  width: 420px;
  height: 240px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

/* KONTEN KIRI */
.kalender-content {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 80px 1fr;
  align-items: center;
  gap: 26px;
}

.kalender-icon {
  width: 70px;
  height: 70px;
  background: linear-gradient(135deg, #07348f, #0057d9);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 24px rgba(0, 87, 217, 0.28);
}

.kalender-icon svg {
  width: 38px;
  height: 38px;
}

.kalender-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kalender-text h1 {
  color: #071b4d;
  font-size: 40px;
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -1px;
  margin-bottom: 8px;
}

.kalender-text h2 {
  color: #ff5a00;
  font-size: 26px;
  font-weight: 900;
  line-height: 1.3;
  margin-bottom: 14px;
}

.kalender-text p {
  max-width: 620px;
  color: #475569;
  font-size: 17px;
  line-height: 1.7;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* VISUAL KANAN */
.kalender-visual {
  position: relative;
  z-index: 2;
  height: 150px;
}

/* Lingkaran dekorasi */
.circle-bg {
  position: absolute;
  border-radius: 50%;
  background: rgba(0, 87, 217, 0.09);
}

.circle-one {
  width: 180px;
  height: 180px;
  left: 20px;
  top: -28px;
}

.circle-two {
  width: 120px;
  height: 120px;
  right: 22px;
  top: 8px;
}

/* Kalender ilustrasi */
.calendar-illustration {
  position: absolute;
  right: 105px;
  bottom: -6px;
  width: 180px;
  height: 145px;
  transform: rotate(5deg);
}

.calendar-rings {
  position: absolute;
  top: -6px;
  left: 30px;
  right: 20px;
  height: 22px;
  display: flex;
  justify-content: space-between;
  z-index: 3;
}

.calendar-rings span {
  width: 9px;
  height: 28px;
  border: 3px solid #8bbdff;
  border-bottom: none;
  border-radius: 999px 999px 0 0;
}

.calendar-body {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 170px;
  height: 125px;
  background: #ffffff;
  border-radius: 10px;
  border-top: 18px solid #cfe3ff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.12);
}

.calendar-body::after {
  content: "";
  position: absolute;
  right: -28px;
  bottom: 0;
  width: 32px;
  height: 110px;
  background: #bfd9fb;
  clip-path: polygon(0 0, 100% 14%, 100% 100%, 0 100%);
  border-radius: 0 8px 8px 0;
}

.calendar-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  padding: 18px 20px;
}

.calendar-grid span {
  height: 16px;
  background: #e5efff;
  border-radius: 4px;
  color: #8bbdff;
  font-size: 15px;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
}

.calendar-grid span.checked {
  background: #eaf3ff;
  color: #93c5fd;
}

.calendar-grid span.active {
  background: #ff8a00;
}

/* Daun dekorasi */
.decor-leaf {
  position: absolute;
  bottom: 4px;
  width: 60px;
  height: 80px;
  opacity: 0.45;
}

.decor-leaf::before,
.decor-leaf::after {
  content: "";
  position: absolute;
  background: #8bbdff;
  border-radius: 50% 0 50% 50%;
}

.decor-leaf::before {
  width: 42px;
  height: 24px;
  top: 14px;
  left: 0;
  transform: rotate(210deg);
}

.decor-leaf::after {
  width: 42px;
  height: 24px;
  top: 38px;
  right: 0;
  transform: rotate(-20deg);
}

.leaf-left {
  left: 54px;
}

.leaf-right {
  right: 18px;
}

/* Hover animasi */
.calendar-illustration {
  transition: transform 0.35s ease;
}

.kalender-hero:hover .calendar-illustration {
  transform: rotate(5deg) translateY(-6px);
}

/* TABLET */
@media (max-width: 992px) {
  .kalender-hero {
    grid-template-columns: 1fr;
    padding: 40px 36px;
    gap: 26px;
  }

  .kalender-text h1 {
    font-size: 44px;
  }

  .kalender-text h2 {
    font-size: 23px;
  }

  .kalender-text p {
    max-width: 100%;
  }

  .kalender-visual {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-hero {
    padding: 32px 20px 26px;
    min-height: auto;
  }

  .kalender-content {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .kalender-icon {
    width: 62px;
    height: 62px;
  }

  .kalender-icon svg {
    width: 34px;
    height: 34px;
  }

  .kalender-text h1 {
    font-size: 36px;
    line-height: 1.12;
    letter-spacing: -0.5px;
  }

  .kalender-text h2 {
    font-size: 19px;
  }

  .kalender-text p {
    font-size: 14px;
    line-height: 1.65;
    text-align: justify;
  }

  .kalender-visual {
    height: 135px;
    transform: scale(0.82);
    transform-origin: top center;
    margin-top: 10px;
  }
}

/* EXTRA SMALL MOBILE */
@media (max-width: 380px) {
  .kalender-hero {
    padding: 28px 16px 24px;
  }

  .kalender-text h1 {
    font-size: 32px;
  }

  .kalender-text h2 {
    font-size: 17px;
  }

  .kalender-visual {
    transform: scale(0.72);
    height: 120px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-90eabb4 */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-summary-section {
  width: 100%;
  padding: 22px 24px;
  background: #f8fbff;
}

/* Wrapper */
.kalender-summary-wrapper {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

/* Card */
.summary-card {
  background: #ffffff;
  border: 1px solid #e1eaf6;
  border-radius: 14px;
  padding: 20px 22px;
  min-height: 96px;
  display: grid;
  grid-template-columns: 76px 1fr;
  align-items: center;
  gap: 18px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.summary-card:hover {
  transform: translateY(-6px);
  border-color: #93c5fd;
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.14);
}

/* Icon */
.summary-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  flex-shrink: 0;
}

.summary-icon svg {
  width: 30px;
  height: 30px;
}

.summary-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Warna icon */
.summary-icon.blue {
  background: #eaf3ff;
  color: #0057d9;
}

.summary-icon.orange {
  background: #fff0df;
  color: #ff7900;
}

.summary-icon.green {
  background: #e9f8ef;
  color: #16a34a;
}

.summary-icon.purple {
  background: #f2e9ff;
  color: #6d4fd8;
}

.summary-icon.cyan {
  background: #e7f8fb;
  color: #0891b2;
}

/* Konten */
.summary-content h3 {
  color: #0057d9;
  font-size: 36px;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 4px;
}

.summary-content p {
  color: #071b4d;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.summary-content .orange-text {
  color: #ff7900;
}

.summary-content .green-text {
  color: #16a34a;
}

.summary-content .purple-text {
  color: #6d4fd8;
}

.summary-content .cyan-text {
  color: #0891b2;
}

/* Tablet */
@media (max-width: 1100px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Tablet kecil */
@media (max-width: 768px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .summary-card {
    min-height: auto;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-summary-section {
    padding: 16px;
  }

  .kalender-summary-wrapper {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .summary-card {
    grid-template-columns: 64px 1fr;
    padding: 18px;
    border-radius: 12px;
    gap: 16px;
  }

  .summary-icon {
    width: 58px;
    height: 58px;
  }

  .summary-icon svg {
    width: 32px;
    height: 32px;
  }

  .summary-content h3 {
    font-size: 30px;
  }

  .summary-content p {
    font-size: 14px;
    line-height: 1.4;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-summary-section {
    padding: 12px;
  }

  .summary-card {
    padding: 16px;
  }

  .summary-content h3 {
    font-size: 28px;
  }

  .summary-content p {
    font-size: 13.5px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-df39d4f */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* SECTION */
.kalender-detail-section {
  width: 100%;
  padding: 24px;
  background: #f8fbff;
}

/* WRAPPER */
.kalender-detail-wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

/* CARD */
.agenda-card {
  --theme: #0057d9;
  --soft: #eef5ff;

  background: #ffffff;
  border: 1px solid #dbe7f5;
  border-left: 5px solid var(--theme);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.agenda-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.13);
}

/* VARIAN WARNA */
.agenda-card.blue {
  --theme: #0057d9;
  --soft: #eef5ff;
}

.agenda-card.orange {
  --theme: #ff5a00;
  --soft: #fff3e8;
}

.agenda-card.green {
  --theme: #16a34a;
  --soft: #ecfdf5;
}

.agenda-card.cyan {
  --theme: #0891b2;
  --soft: #ecfeff;
}

.agenda-card.purple {
  --theme: #6d4fd8;
  --soft: #f3e8ff;
}

.agenda-card.yellow {
  --theme: #e6a000;
  --soft: #fff8db;
}

/* CARD FULL WIDTH */
.full-card {
  grid-column: 1 / -1;
}

/* HEADER */
.agenda-header {
  min-height: 66px;
  background: linear-gradient(135deg, var(--soft) 0%, #ffffff 100%);
  padding: 16px 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid #e5edf8;
}

.agenda-number {
  width: 34px;
  height: 34px;
  background: var(--theme);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 900;
  flex-shrink: 0;
  box-shadow: 0 7px 16px rgba(15, 23, 42, 0.16);
}

.agenda-icon {
  width: 36px;
  height: 36px;
  color: var(--theme);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.agenda-icon svg {
  width: 29px;
  height: 29px;
}

.agenda-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.agenda-header h2 {
  color: var(--theme);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.3;
}

/* LIST */
.agenda-list {
  padding: 14px 22px 18px;
}

.agenda-item {
  display: grid;
  grid-template-columns: 20px 1fr 280px;
  gap: 12px;
  align-items: start;
  padding: 11px 0;
  border-bottom: 1px solid #edf2f7;
}

.agenda-item:last-child {
  border-bottom: none;
}

.agenda-dot {
  width: 10px;
  height: 10px;
  background: var(--theme);
  border-radius: 50%;
  margin-top: 6px;
  position: relative;
}

.agenda-item:not(:last-child) .agenda-dot::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 13px;
  width: 2px;
  height: 28px;
  background: var(--theme);
  opacity: 0.5;
  transform: translateX(-50%);
}

.agenda-item p {
  color: #1e293b;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.agenda-item span {
  color: #0f172a;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 500;
  text-align: left;
}

/* KHUSUS CARD LAIN-LAIN */
.two-column-list .agenda-item {
  grid-template-columns: 20px 1fr 420px;
}

/* TABLET */
@media (max-width: 1100px) {
  .kalender-detail-wrapper {
    grid-template-columns: 1fr;
  }

  .full-card {
    grid-column: auto;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 20px 1fr 260px;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-detail-section {
    padding: 16px;
  }

  .kalender-detail-wrapper {
    gap: 16px;
  }

  .agenda-card {
    border-left-width: 4px;
    border-radius: 12px;
  }

  .agenda-header {
    padding: 15px 16px;
    gap: 10px;
    align-items: flex-start;
  }

  .agenda-number {
    width: 30px;
    height: 30px;
    font-size: 14px;
  }

  .agenda-icon {
    width: 30px;
    height: 30px;
  }

  .agenda-icon svg {
    width: 25px;
    height: 25px;
  }

  .agenda-header h2 {
    font-size: 16px;
  }

  .agenda-list {
    padding: 12px 16px 16px;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 18px 1fr;
    gap: 10px;
  }

  .agenda-item span {
    grid-column: 2;
    font-size: 13px;
    color: #334155;
  }

  .agenda-item p {
    font-size: 13.5px;
    line-height: 1.6;
    text-align: justify;
  }

  .agenda-dot {
    width: 9px;
    height: 9px;
  }

  .agenda-item:not(:last-child) .agenda-dot::after {
    height: 42px;
  }
}

/* EXTRA SMALL */
@media (max-width: 380px) {
  .kalender-detail-section {
    padding: 12px;
  }

  .agenda-header h2 {
    font-size: 15px;
  }

  .agenda-item p,
  .agenda-item span {
    font-size: 12.8px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-23c08fc */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-note-section {
  width: 100%;
  padding: 18px 24px;
  background: #f8fbff;
}

/* Card catatan */
.kalender-note-card {
  width: 100%;
  min-height: 48px;
  background: linear-gradient(135deg, #eef6ff 0%, #ffffff 100%);
  border: 1px solid #dbeafe;
  border-radius: 12px;
  padding: 12px 24px;
  display: grid;
  grid-template-columns: 30px 1fr;
  align-items: center;
  gap: 14px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.kalender-note-card:hover {
  transform: translateY(-4px);
  border-color: #93c5fd;
  box-shadow: 0 14px 30px rgba(0, 87, 217, 0.12);
}

/* Icon */
.kalender-note-icon {
  width: 24px;
  height: 24px;
  color: #0057d9;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kalender-note-icon svg {
  width: 22px;
  height: 22px;
}

.kalender-note-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Teks */
.kalender-note-card p {
  color: #07348f;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* Tablet */
@media (max-width: 768px) {
  .kalender-note-card {
    padding: 14px 18px;
    grid-template-columns: 28px 1fr;
  }

  .kalender-note-card p {
    font-size: 13.5px;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-note-section {
    padding: 14px 16px;
  }

  .kalender-note-card {
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: flex-start;
    padding: 18px;
    border-radius: 10px;
  }

  .kalender-note-icon {
    width: 26px;
    height: 26px;
  }

  .kalender-note-icon svg {
    width: 24px;
    height: 24px;
  }

  .kalender-note-card p {
    font-size: 13px;
    line-height: 1.65;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-note-section {
    padding: 12px;
  }

  .kalender-note-card {
    padding: 16px;
  }

  .kalender-note-card p {
    font-size: 12.8px;
  }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bf5a675 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab75835 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1e588bd */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h4 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d81bee0 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a78bf70 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8e8a982 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-61c9516 */.document-card {
  width: 220px;
  padding: 16px;
  background: 
  border-radius: 10px;
  font-family: "Poppins", "Inter", Arial, sans-serif;
}

.document-card h3 {
  margin: 0 0 6px 0;
  color: #0a1f5c;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

.document-card p {
  margin: 0 0 10px 0;
  color: #1f2a44;
  font-size: 12px;
  font-weight: 500;
}

.badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 13px;
  background: #eaf2ff;
  color: #0b63f6;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}

.button-group {
  display: flex;
  gap: 10px;
}

.btn {
  flex: 1;
  height: 35px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: 0.25s ease;
}

.btn-outline {
  color: #0b63f6;
  background: #ffffff;
  border: 2px solid #b7ccff;
}

.btn-outline:hover {
  background: #eef4ff;
}

.btn-primary {
  color: #ffffff;
  background: #0046d5;
  border: 2px solid #0046d5;
}

.btn-primary:hover {
  background: #0037aa;
  border-color: #0037aa;
}

.icon {
  font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04bfb8a */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* HERO UTAMA */
.kalender-hero {
  width: 100%;
  min-height: 210px;
  position: relative;
  overflow: hidden;
  padding: 42px 70px;
  display: grid;
  grid-template-columns: 1fr 42px;
  align-items: center;
  gap: 40px;
  background:
    radial-gradient(circle at 78% 40%, rgba(0, 87, 217, 0.12), transparent 28%),
    linear-gradient(135deg, #f8fbff 0%, #eef6ff 55%, #ffffff 100%);
  border-bottom: 1px solid #dbe7f5;
}

/* Dekorasi background */
.kalender-hero::before {
  content: "";
  position: absolute;
  left: -80px;
  bottom: -120px;
  width: 320px;
  height: 230px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

.kalender-hero::after {
  content: "";
  position: absolute;
  right: 260px;
  bottom: -120px;
  width: 420px;
  height: 240px;
  background: rgba(0, 87, 217, 0.07);
  border-radius: 50%;
}

/* KONTEN KIRI */
.kalender-content {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 80px 1fr;
  align-items: center;
  gap: 26px;
}

.kalender-icon {
  width: 70px;
  height: 70px;
  background: linear-gradient(135deg, #07348f, #0057d9);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 24px rgba(0, 87, 217, 0.28);
}

.kalender-icon svg {
  width: 38px;
  height: 38px;
}

.kalender-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kalender-text h1 {
  color: #071b4d;
  font-size: 40px;
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -1px;
  margin-bottom: 8px;
}

.kalender-text h2 {
  color: #ff5a00;
  font-size: 26px;
  font-weight: 900;
  line-height: 1.3;
  margin-bottom: 14px;
}

.kalender-text p {
  max-width: 620px;
  color: #475569;
  font-size: 17px;
  line-height: 1.7;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* VISUAL KANAN */
.kalender-visual {
  position: relative;
  z-index: 2;
  height: 150px;
}

/* Lingkaran dekorasi */
.circle-bg {
  position: absolute;
  border-radius: 50%;
  background: rgba(0, 87, 217, 0.09);
}

.circle-one {
  width: 180px;
  height: 180px;
  left: 20px;
  top: -28px;
}

.circle-two {
  width: 120px;
  height: 120px;
  right: 22px;
  top: 8px;
}

/* Kalender ilustrasi */
.calendar-illustration {
  position: absolute;
  right: 105px;
  bottom: -6px;
  width: 180px;
  height: 145px;
  transform: rotate(5deg);
}

.calendar-rings {
  position: absolute;
  top: -6px;
  left: 30px;
  right: 20px;
  height: 22px;
  display: flex;
  justify-content: space-between;
  z-index: 3;
}

.calendar-rings span {
  width: 9px;
  height: 28px;
  border: 3px solid #8bbdff;
  border-bottom: none;
  border-radius: 999px 999px 0 0;
}

.calendar-body {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 170px;
  height: 125px;
  background: #ffffff;
  border-radius: 10px;
  border-top: 18px solid #cfe3ff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.12);
}

.calendar-body::after {
  content: "";
  position: absolute;
  right: -28px;
  bottom: 0;
  width: 32px;
  height: 110px;
  background: #bfd9fb;
  clip-path: polygon(0 0, 100% 14%, 100% 100%, 0 100%);
  border-radius: 0 8px 8px 0;
}

.calendar-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  padding: 18px 20px;
}

.calendar-grid span {
  height: 16px;
  background: #e5efff;
  border-radius: 4px;
  color: #8bbdff;
  font-size: 15px;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
}

.calendar-grid span.checked {
  background: #eaf3ff;
  color: #93c5fd;
}

.calendar-grid span.active {
  background: #ff8a00;
}

/* Daun dekorasi */
.decor-leaf {
  position: absolute;
  bottom: 4px;
  width: 60px;
  height: 80px;
  opacity: 0.45;
}

.decor-leaf::before,
.decor-leaf::after {
  content: "";
  position: absolute;
  background: #8bbdff;
  border-radius: 50% 0 50% 50%;
}

.decor-leaf::before {
  width: 42px;
  height: 24px;
  top: 14px;
  left: 0;
  transform: rotate(210deg);
}

.decor-leaf::after {
  width: 42px;
  height: 24px;
  top: 38px;
  right: 0;
  transform: rotate(-20deg);
}

.leaf-left {
  left: 54px;
}

.leaf-right {
  right: 18px;
}

/* Hover animasi */
.calendar-illustration {
  transition: transform 0.35s ease;
}

.kalender-hero:hover .calendar-illustration {
  transform: rotate(5deg) translateY(-6px);
}

/* TABLET */
@media (max-width: 992px) {
  .kalender-hero {
    grid-template-columns: 1fr;
    padding: 40px 36px;
    gap: 26px;
  }

  .kalender-text h1 {
    font-size: 44px;
  }

  .kalender-text h2 {
    font-size: 23px;
  }

  .kalender-text p {
    max-width: 100%;
  }

  .kalender-visual {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-hero {
    padding: 32px 20px 26px;
    min-height: auto;
  }

  .kalender-content {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .kalender-icon {
    width: 62px;
    height: 62px;
  }

  .kalender-icon svg {
    width: 34px;
    height: 34px;
  }

  .kalender-text h1 {
    font-size: 36px;
    line-height: 1.12;
    letter-spacing: -0.5px;
  }

  .kalender-text h2 {
    font-size: 19px;
  }

  .kalender-text p {
    font-size: 14px;
    line-height: 1.65;
    text-align: justify;
  }

  .kalender-visual {
    height: 135px;
    transform: scale(0.82);
    transform-origin: top center;
    margin-top: 10px;
  }
}

/* EXTRA SMALL MOBILE */
@media (max-width: 380px) {
  .kalender-hero {
    padding: 28px 16px 24px;
  }

  .kalender-text h1 {
    font-size: 32px;
  }

  .kalender-text h2 {
    font-size: 17px;
  }

  .kalender-visual {
    transform: scale(0.72);
    height: 120px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-90eabb4 */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-summary-section {
  width: 100%;
  padding: 22px 24px;
  background: #f8fbff;
}

/* Wrapper */
.kalender-summary-wrapper {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

/* Card */
.summary-card {
  background: #ffffff;
  border: 1px solid #e1eaf6;
  border-radius: 14px;
  padding: 20px 22px;
  min-height: 96px;
  display: grid;
  grid-template-columns: 76px 1fr;
  align-items: center;
  gap: 18px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.summary-card:hover {
  transform: translateY(-6px);
  border-color: #93c5fd;
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.14);
}

/* Icon */
.summary-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  flex-shrink: 0;
}

.summary-icon svg {
  width: 30px;
  height: 30px;
}

.summary-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Warna icon */
.summary-icon.blue {
  background: #eaf3ff;
  color: #0057d9;
}

.summary-icon.orange {
  background: #fff0df;
  color: #ff7900;
}

.summary-icon.green {
  background: #e9f8ef;
  color: #16a34a;
}

.summary-icon.purple {
  background: #f2e9ff;
  color: #6d4fd8;
}

.summary-icon.cyan {
  background: #e7f8fb;
  color: #0891b2;
}

/* Konten */
.summary-content h3 {
  color: #0057d9;
  font-size: 36px;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 4px;
}

.summary-content p {
  color: #071b4d;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.summary-content .orange-text {
  color: #ff7900;
}

.summary-content .green-text {
  color: #16a34a;
}

.summary-content .purple-text {
  color: #6d4fd8;
}

.summary-content .cyan-text {
  color: #0891b2;
}

/* Tablet */
@media (max-width: 1100px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Tablet kecil */
@media (max-width: 768px) {
  .kalender-summary-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .summary-card {
    min-height: auto;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-summary-section {
    padding: 16px;
  }

  .kalender-summary-wrapper {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .summary-card {
    grid-template-columns: 64px 1fr;
    padding: 18px;
    border-radius: 12px;
    gap: 16px;
  }

  .summary-icon {
    width: 58px;
    height: 58px;
  }

  .summary-icon svg {
    width: 32px;
    height: 32px;
  }

  .summary-content h3 {
    font-size: 30px;
  }

  .summary-content p {
    font-size: 14px;
    line-height: 1.4;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-summary-section {
    padding: 12px;
  }

  .summary-card {
    padding: 16px;
  }

  .summary-content h3 {
    font-size: 28px;
  }

  .summary-content p {
    font-size: 13.5px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-df39d4f */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* SECTION */
.kalender-detail-section {
  width: 100%;
  padding: 24px;
  background: #f8fbff;
}

/* WRAPPER */
.kalender-detail-wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

/* CARD */
.agenda-card {
  --theme: #0057d9;
  --soft: #eef5ff;

  background: #ffffff;
  border: 1px solid #dbe7f5;
  border-left: 5px solid var(--theme);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.agenda-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 38px rgba(0, 87, 217, 0.13);
}

/* VARIAN WARNA */
.agenda-card.blue {
  --theme: #0057d9;
  --soft: #eef5ff;
}

.agenda-card.orange {
  --theme: #ff5a00;
  --soft: #fff3e8;
}

.agenda-card.green {
  --theme: #16a34a;
  --soft: #ecfdf5;
}

.agenda-card.cyan {
  --theme: #0891b2;
  --soft: #ecfeff;
}

.agenda-card.purple {
  --theme: #6d4fd8;
  --soft: #f3e8ff;
}

.agenda-card.yellow {
  --theme: #e6a000;
  --soft: #fff8db;
}

/* CARD FULL WIDTH */
.full-card {
  grid-column: 1 / -1;
}

/* HEADER */
.agenda-header {
  min-height: 66px;
  background: linear-gradient(135deg, var(--soft) 0%, #ffffff 100%);
  padding: 16px 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid #e5edf8;
}

.agenda-number {
  width: 34px;
  height: 34px;
  background: var(--theme);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 900;
  flex-shrink: 0;
  box-shadow: 0 7px 16px rgba(15, 23, 42, 0.16);
}

.agenda-icon {
  width: 36px;
  height: 36px;
  color: var(--theme);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.agenda-icon svg {
  width: 29px;
  height: 29px;
}

.agenda-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.agenda-header h2 {
  color: var(--theme);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.3;
}

/* LIST */
.agenda-list {
  padding: 14px 22px 18px;
}

.agenda-item {
  display: grid;
  grid-template-columns: 20px 1fr 280px;
  gap: 12px;
  align-items: start;
  padding: 11px 0;
  border-bottom: 1px solid #edf2f7;
}

.agenda-item:last-child {
  border-bottom: none;
}

.agenda-dot {
  width: 10px;
  height: 10px;
  background: var(--theme);
  border-radius: 50%;
  margin-top: 6px;
  position: relative;
}

.agenda-item:not(:last-child) .agenda-dot::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 13px;
  width: 2px;
  height: 28px;
  background: var(--theme);
  opacity: 0.5;
  transform: translateX(-50%);
}

.agenda-item p {
  color: #1e293b;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 600;
  text-align: justify;
  text-justify: inter-word;
}

.agenda-item span {
  color: #0f172a;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 500;
  text-align: left;
}

/* KHUSUS CARD LAIN-LAIN */
.two-column-list .agenda-item {
  grid-template-columns: 20px 1fr 420px;
}

/* TABLET */
@media (max-width: 1100px) {
  .kalender-detail-wrapper {
    grid-template-columns: 1fr;
  }

  .full-card {
    grid-column: auto;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 20px 1fr 260px;
  }
}

/* MOBILE */
@media (max-width: 576px) {
  .kalender-detail-section {
    padding: 16px;
  }

  .kalender-detail-wrapper {
    gap: 16px;
  }

  .agenda-card {
    border-left-width: 4px;
    border-radius: 12px;
  }

  .agenda-header {
    padding: 15px 16px;
    gap: 10px;
    align-items: flex-start;
  }

  .agenda-number {
    width: 30px;
    height: 30px;
    font-size: 14px;
  }

  .agenda-icon {
    width: 30px;
    height: 30px;
  }

  .agenda-icon svg {
    width: 25px;
    height: 25px;
  }

  .agenda-header h2 {
    font-size: 16px;
  }

  .agenda-list {
    padding: 12px 16px 16px;
  }

  .agenda-item,
  .two-column-list .agenda-item {
    grid-template-columns: 18px 1fr;
    gap: 10px;
  }

  .agenda-item span {
    grid-column: 2;
    font-size: 13px;
    color: #334155;
  }

  .agenda-item p {
    font-size: 13.5px;
    line-height: 1.6;
    text-align: justify;
  }

  .agenda-dot {
    width: 9px;
    height: 9px;
  }

  .agenda-item:not(:last-child) .agenda-dot::after {
    height: 42px;
  }
}

/* EXTRA SMALL */
@media (max-width: 380px) {
  .kalender-detail-section {
    padding: 12px;
  }

  .agenda-header h2 {
    font-size: 15px;
  }

  .agenda-item p,
  .agenda-item span {
    font-size: 12.8px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-23c08fc */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #f8fbff;
  font-family: Arial, Helvetica, sans-serif;
  color: #071b4d;
}

/* Section utama */
.kalender-note-section {
  width: 100%;
  padding: 18px 24px;
  background: #f8fbff;
}

/* Card catatan */
.kalender-note-card {
  width: 100%;
  min-height: 48px;
  background: linear-gradient(135deg, #eef6ff 0%, #ffffff 100%);
  border: 1px solid #dbeafe;
  border-radius: 12px;
  padding: 12px 24px;
  display: grid;
  grid-template-columns: 30px 1fr;
  align-items: center;
  gap: 14px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.kalender-note-card:hover {
  transform: translateY(-4px);
  border-color: #93c5fd;
  box-shadow: 0 14px 30px rgba(0, 87, 217, 0.12);
}

/* Icon */
.kalender-note-icon {
  width: 24px;
  height: 24px;
  color: #0057d9;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kalender-note-icon svg {
  width: 22px;
  height: 22px;
}

.kalender-note-icon svg path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Teks */
.kalender-note-card p {
  color: #07348f;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-word;
}

/* Tablet */
@media (max-width: 768px) {
  .kalender-note-card {
    padding: 14px 18px;
    grid-template-columns: 28px 1fr;
  }

  .kalender-note-card p {
    font-size: 13.5px;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .kalender-note-section {
    padding: 14px 16px;
  }

  .kalender-note-card {
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: flex-start;
    padding: 18px;
    border-radius: 10px;
  }

  .kalender-note-icon {
    width: 26px;
    height: 26px;
  }

  .kalender-note-icon svg {
    width: 24px;
    height: 24px;
  }

  .kalender-note-card p {
    font-size: 13px;
    line-height: 1.65;
    text-align: justify;
  }
}

/* Extra small mobile */
@media (max-width: 380px) {
  .kalender-note-section {
    padding: 12px;
  }

  .kalender-note-card {
    padding: 16px;
  }

  .kalender-note-card p {
    font-size: 12.8px;
  }
}/* End custom CSS */