.elementor-1007 .elementor-element.elementor-element-6a00253f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--overflow:hidden;--padding-top:0px;--padding-bottom:50px;--padding-left:15px;--padding-right:15px;}.elementor-1007 .elementor-element.elementor-element-47538e48{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:2;}.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper .elementskit-section-title{color:#FFFFFF;font-family:"Poppins", Sans-serif;font-size:74px;font-weight:600;line-height:1.14em;letter-spacing:-1.4px;}.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper .elementskit-section-title > span{color:#FFFFFF;}.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper .elementskit-section-title:hover > span{color:#FFFFFF;}.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper .elementskit-section-subtitle{color:#FFFFFF;font-size:30px;line-height:36px;}.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper p{color:#F5F5F5;font-family:"Roboto", Sans-serif;font-size:20px;font-weight:400;line-height:1.5em;margin:0% 25% 0% 0%;}.elementor-1007 .elementor-element.elementor-element-39dd9552{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 028px) 0px;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit_double_button{width:450px;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn:not(:last-child){margin-right:18px;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-one > i{padding-right:8px;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-one > svg{margin-right:8px;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-one{color:#FFFFFF;font-family:"Roboto", Sans-serif;font-size:17px;font-weight:500;line-height:1.5em;border-radius:100px 100px 100px 100px;background-color:#E54220;padding:15px 35px 15px 35px;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-one svg{fill:#FFFFFF;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-one:hover{color:#FFFFFF;background-color:#B93418;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-one:hover svg{fill:#FFFFFF;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-two{color:#242F65;font-family:"Roboto", Sans-serif;font-size:17px;font-weight:500;line-height:1.5em;border-radius:100px 100px 100px 100px;background-color:#FFFFFF;padding:15px 35px 15px 35px;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-two svg{fill:#242F65;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-two:hover{color:#FFFFFF;background-color:#E54220;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-two:hover svg{fill:#FFFFFF;}.elementor-1007 .elementor-element.elementor-element-7f9289f3{--display:flex;--min-height:0px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1;}.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-1007 .elementor-element.elementor-element-54438427{margin:0px -110px calc(var(--kit-widget-spacing, 0px) + 0px) -250px;width:var( --container-widget-width, 700px );max-width:700px;--container-widget-width:700px;--container-widget-flex-grow:0;top:0px;z-index:1;}body:not(.rtl) .elementor-1007 .elementor-element.elementor-element-54438427{left:0px;}body.rtl .elementor-1007 .elementor-element.elementor-element-54438427{right:0px;}.elementor-1007 .elementor-element.elementor-element-40dd9949 img{width:60%;max-width:100%;}.elementor-1007 .elementor-element.elementor-element-40dd9949{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;z-index:2;}.elementor-1007 .elementor-element.elementor-element-6ee52580{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-1007 .elementor-element.elementor-element-6ee52580:not(.elementor-motion-effects-element-type-background), .elementor-1007 .elementor-element.elementor-element-6ee52580 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1007 .elementor-element.elementor-element-aec3c62{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:90px;--padding-left:15px;--padding-right:15px;}.elementor-1007 .elementor-element.elementor-element-aec3c62:not(.elementor-motion-effects-element-type-background), .elementor-1007 .elementor-element.elementor-element-aec3c62 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1007 .elementor-element.elementor-element-9218d7b .ekit-heading__description{max-width:570px;}.elementor-1007 .elementor-element.elementor-element-9218d7b .elementskit-section-title-wraper .elementskit-section-title{color:#242F65;margin:0px 0px 4px 0px;font-family:"Poppins", Sans-serif;font-size:48px;font-weight:600;line-height:1.4em;letter-spacing:-1.4px;}.elementor-1007 .elementor-element.elementor-element-9218d7b .elementskit-section-title-wraper .elementskit-section-title > span{color:#FF5151;}.elementor-1007 .elementor-element.elementor-element-9218d7b .elementskit-section-title-wraper .elementskit-section-title span:last-child, .elementor-1007 .elementor-element.elementor-element-9218d7b .elementskit-section-title-wraper .elementskit-section-title > span{font-family:"Poppins", Sans-serif;font-weight:600;font-style:italic;line-height:1.4em;letter-spacing:-0.14px;}.elementor-1007 .elementor-element.elementor-element-9218d7b .elementskit-section-title-wraper p{color:#333333;font-family:"Roboto", Sans-serif;font-size:16px;font-weight:400;}.elementor-1007 .elementor-element.elementor-element-9218d7b{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 53px) 0px;}.elementor-widget-image-gallery .gallery-item .gallery-caption{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1007 .elementor-element.elementor-element-0b657cd .gallery-item .gallery-caption{display:none;}.elementor-1007 .elementor-element.elementor-element-0b657cd .gallery-item{padding:0 15px 15px 0;}.elementor-1007 .elementor-element.elementor-element-0b657cd .gallery{margin:0 -15px -15px 0;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-1007 .elementor-element.elementor-element-aec3c62{--content-width:1120px;}}@media(max-width:1024px) and (min-width:768px){.elementor-1007 .elementor-element.elementor-element-47538e48{--width:50%;}.elementor-1007 .elementor-element.elementor-element-7f9289f3{--width:50%;}}@media(max-width:1024px){.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper .elementskit-section-title{font-size:48px;}.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper p{font-size:16px;margin:0px 0px 0px 0px;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit_double_button{width:100%;}.elementor-1007 .elementor-element.elementor-element-7f9289f3{--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1007 .elementor-element.elementor-element-54438427{margin:0px -40px calc(var(--kit-widget-spacing, 0px) + 0px) -100px;}.elementor-1007 .elementor-element.elementor-element-40dd9949{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}@media(max-width:767px){.elementor-1007 .elementor-element.elementor-element-6a00253f{--padding-top:0px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-1007 .elementor-element.elementor-element-47538e48{--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper .elementskit-section-title{margin:0px 0px 13px 0px;font-size:43px;letter-spacing:-0.5px;}.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper .elementskit-section-subtitle{font-size:20px;line-height:1.1em;}.elementor-1007 .elementor-element.elementor-element-39dd9552 .elementskit-section-title-wraper p{font-size:16px;}.elementor-1007 .elementor-element.elementor-element-39dd9552{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit_double_button{width:100%;}.elementor-1007 .elementor-element.elementor-element-b5496e6 .ekit-double-btn.ekit-double-btn-one{margin:0px 0px 10px 0px;}.elementor-1007 .elementor-element.elementor-element-b5496e6{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1007 .elementor-element.elementor-element-7f9289f3{--margin-top:0px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;}.elementor-1007 .elementor-element.elementor-element-40dd9949 img{width:100%;}.elementor-1007 .elementor-element.elementor-element-40dd9949{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1007 .elementor-element.elementor-element-6ee52580{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1007 .elementor-element.elementor-element-aec3c62{--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-1007 .elementor-element.elementor-element-9218d7b .elementskit-section-title-wraper .elementskit-section-title{font-size:34px;line-height:34px;}.elementor-1007 .elementor-element.elementor-element-9218d7b{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 23px) 0px;}}/* Start custom CSS for container, class: .elementor-element-6a00253f */.hero-gradient-dark {
  position: relative;
  background: linear-gradient(135deg, #1B203D, #243B70, #3C5BDB, #1B203D, #242F65);
  background-size: 200% 200%; /* lebih kecil, pergerakan subtle */
  animation: heroDarkShift 20s ease-in-out infinite; /* lebih perlahan & smooth */
  overflow: hidden;
  padding: 100px 20px;
  color: #ffffff;
}

.hero-gradient-dark::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,0.25);
  z-index: 1;
}

.hero-gradient-dark h1, 
.hero-gradient-dark p {
  position: relative;
  z-index: 2;
  text-shadow: 0 0 10px rgba(255,255,255,0.15);
}

@keyframes heroDarkShift {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 50% 50%; }
  100% { background-position: 0% 50%; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1603c75 *//* =========================================================
   KALENDAR KUDA 2027
   CALENDAR PRINTING MALAYSIA
========================================================= */

.calendar-page{
    --cp-navy:#242F65;
    --cp-navy-dark:#19224d;
    --cp-orange:#E54220;
    --cp-orange-dark:#c93618;
    --cp-white:#FFFFFF;

    --cp-text:#333333;
    --cp-muted:#667085;

    --cp-bg:#f7f8fc;
    --cp-soft:#f3f5fb;
    --cp-orange-soft:#fff4f0;

    --cp-border:#e3e6ef;

    --cp-radius-sm:10px;
    --cp-radius:16px;
    --cp-radius-lg:24px;

    --cp-shadow:
        0 8px 28px rgba(36,47,101,.08);

    width:100%;
    max-width:1180px;

    margin:0 auto;
    padding:20px 20px 50px;

    font-family:"Roboto",Arial,sans-serif;

    color:var(--cp-text);

    font-size:16px;
    line-height:1.75;

    overflow:hidden;
}


.calendar-page *,
.calendar-page *::before,
.calendar-page *::after{
    box-sizing:border-box;
}


/* =========================================================
   TYPOGRAPHY
========================================================= */

.calendar-page h2,
.calendar-page h3{
    font-family:"Poppins",Arial,sans-serif;

    color:var(--cp-navy);

    line-height:1.3;
}


.calendar-page h2{
    margin:48px 0 16px;

    font-size:clamp(26px,3vw,36px);

    font-weight:700;
}


.calendar-page h3{
    margin:30px 0 12px;

    font-size:21px;

    font-weight:700;
}


.calendar-page p{
    margin:0 0 17px;
}


.calendar-page strong{
    font-weight:700;
}


/* =========================================================
   LINKS
========================================================= */

.calendar-page a{
    color:var(--cp-orange);

    text-decoration:none;

    font-weight:700;
}


.calendar-page a:hover{
    color:var(--cp-orange-dark);
}


/* =========================================================
   MAIN IMAGE
========================================================= */

.calendar-page figure{
    margin:25px 0;
}


.calendar-page figure img{
    display:block;

    width:100%;

    height:auto;

    border-radius:var(--cp-radius);

    object-fit:cover;
}


.calendar-page .calendar-main-image{
    margin:30px 0 45px;
}


.calendar-page .calendar-main-image img{
    max-height:650px;

    object-fit:cover;

    box-shadow:var(--cp-shadow);
}


.calendar-page figcaption{
    margin-top:10px;

    color:var(--cp-muted);

    font-size:13px;

    text-align:center;
}


/* =========================================================
   STANDARD LIST
========================================================= */

.calendar-page .calendar-list{
    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:9px 20px;

    margin:20px 0 28px;

    padding:0;

    list-style:none;
}


.calendar-page .calendar-list li{
    position:relative;

    padding:11px 14px 11px 36px;

    border:1px solid var(--cp-border);

    border-radius:var(--cp-radius-sm);

    background:#fff;
}


.calendar-page .calendar-list li::before{
    content:"✓";

    position:absolute;

    left:13px;
    top:10px;

    color:var(--cp-orange);

    font-weight:800;
}


/* =========================================================
   SIZE GRID
========================================================= */

.calendar-page .size-grid{
    display:grid;

    grid-template-columns:repeat(3,minmax(0,1fr));

    gap:20px;

    margin:28px 0 40px;
}


.calendar-page .size-card{
    display:flex;

    flex-direction:column;

    padding:20px;

    border:1px solid var(--cp-border);

    border-radius:var(--cp-radius);

    background:#fff;

    box-shadow:var(--cp-shadow);
}


.calendar-page .size-card h3{
    margin:0 0 15px;

    text-align:center;
}


.calendar-page .size-card figure{
    margin:0 0 17px;

    overflow:hidden;

    border-radius:12px;
}


.calendar-page .size-card figure img{
    width:100%;

    aspect-ratio:1 / 1;

    object-fit:cover;

    transition:transform .3s ease;
}


.calendar-page .size-card:hover figure img{
    transform:scale(1.03);
}


.calendar-page .size-spec{
    margin:0 0 12px;

    padding:10px 13px;

    border-radius:8px;

    background:var(--cp-orange-soft);

    color:var(--cp-orange);

    text-align:center;
}


/* =========================================================
   INFO BOX
========================================================= */

.calendar-page .info-box{
    margin:25px 0;

    padding:19px 21px;

    border:1px solid #d9e0f2;
    border-left:5px solid var(--cp-navy);

    border-radius:var(--cp-radius-sm);

    background:#f7f9ff;
}


.calendar-page .info-box p{
    margin:0;
}


/* =========================================================
   WARNING BOX
========================================================= */

.calendar-page .warning-box{
    margin:25px 0;

    padding:19px 21px;

    border:1px solid #ffd8ce;
    border-left:5px solid var(--cp-orange);

    border-radius:var(--cp-radius-sm);

    background:var(--cp-orange-soft);
}


.calendar-page .warning-box p{
    margin:0;
}


/* =========================================================
   PRICE SECTION
========================================================= */

.calendar-page .calendar-price-section{
    position:relative;

    margin:55px 0;

    padding:34px;

    border:1px solid var(--cp-border);

    border-radius:var(--cp-radius-lg);

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f8f9fc 100%
        );

    box-shadow:
        0 15px 45px rgba(36,47,101,.09);
}


.calendar-page .calendar-price-section::before{
    content:"";

    position:absolute;

    top:0;
    left:34px;
    right:34px;

    height:4px;

    border-radius:0 0 5px 5px;

    background:var(--cp-orange);
}


.calendar-page .price-heading{
    max-width:800px;
}


.calendar-page .price-heading h2{
    margin:6px 0 12px;
}


.calendar-page .price-heading p{
    color:var(--cp-muted);
}


.calendar-page .price-eyebrow{
    display:inline-block;

    margin-top:5px;

    color:var(--cp-orange);

    font-family:"Poppins",Arial,sans-serif;

    font-size:12px;
    font-weight:800;

    letter-spacing:.1em;
}


/* =========================================================
   SIZE INFO ABOVE PRICE
========================================================= */

.calendar-page .price-size-info{
    display:grid;

    grid-template-columns:repeat(3,minmax(0,1fr));

    gap:12px;

    margin:25px 0 22px;
}


.calendar-page .price-size-info > div{
    padding:14px 16px;

    border:1px solid var(--cp-border);

    border-radius:12px;

    background:#fff;

    text-align:center;
}


.calendar-page .price-size-info span{
    display:block;

    margin-bottom:3px;

    color:var(--cp-muted);

    font-size:12px;
}


.calendar-page .price-size-info strong{
    display:block;

    color:var(--cp-navy);

    font-family:"Poppins",Arial,sans-serif;

    font-size:15px;
}


/* =========================================================
   PRICE TABLE
========================================================= */

.calendar-page .table-responsive{
    width:100%;

    overflow-x:auto;

    margin:0;

    border:1px solid var(--cp-border);

    border-radius:14px;

    background:#fff;

    -webkit-overflow-scrolling:touch;
}


.calendar-page .calendar-price-table{
    width:100%;

    min-width:650px;

    margin:0;

    border-collapse:separate;
    border-spacing:0;

    font-family:"Roboto",Arial,sans-serif;

    font-size:14px;

    text-align:center;
}


.calendar-page .calendar-price-table thead th{
    position:sticky;

    top:0;

    padding:15px 14px;

    border-right:1px solid rgba(255,255,255,.14);

    background:var(--cp-navy);

    color:#fff;

    font-family:"Poppins",Arial,sans-serif;

    font-size:13px;
    font-weight:700;

    white-space:nowrap;
}


.calendar-page .calendar-price-table thead th:first-child{
    text-align:left;
}


.calendar-page .calendar-price-table thead th:last-child{
    border-right:0;
}


.calendar-page .calendar-price-table tbody td{
    padding:13px 14px;

    border-right:1px solid var(--cp-border);
    border-bottom:1px solid var(--cp-border);

    color:#34394c;

    white-space:nowrap;
}


.calendar-page .calendar-price-table tbody tr:last-child td{
    border-bottom:0;
}


.calendar-page .calendar-price-table tbody td:last-child{
    border-right:0;
}


.calendar-page .calendar-price-table tbody td:first-child{
    color:var(--cp-navy);

    font-weight:700;

    text-align:left;
}


.calendar-page .calendar-price-table tbody tr:nth-child(even){
    background:#f8f9fc;
}


.calendar-page .calendar-price-table tbody tr{
    transition:
        background .18s ease,
        color .18s ease;
}


.calendar-page .calendar-price-table tbody tr:hover{
    background:var(--cp-orange-soft);
}


.calendar-page .calendar-price-table tbody tr:hover td{
    color:var(--cp-orange-dark);
}


.calendar-page .calendar-price-table .price-highlight{
    background:#f1f3fa;
}


.calendar-page .calendar-price-table .price-highlight td{
    font-weight:700;
}


/* =========================================================
   PRICE CTA
========================================================= */

.calendar-page .price-note{
    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:25px;

    margin-top:22px;

    padding:20px;

    border-radius:14px;

    background:var(--cp-navy);

    color:#fff;
}


.calendar-page .price-note > div{
    flex:1;
}


.calendar-page .price-note strong{
    display:block;

    margin-bottom:4px;

    color:#fff;

    font-family:"Poppins",Arial,sans-serif;

    font-size:17px;
}


.calendar-page .price-note p{
    margin:0;

    color:rgba(255,255,255,.8);

    font-size:14px;
}


.calendar-page .calendar-button{
    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-height:48px;

    padding:12px 20px;

    border:2px solid var(--cp-orange);

    border-radius:10px;

    background:var(--cp-orange);

    color:#fff !important;

    font-family:"Poppins",Arial,sans-serif;

    font-size:14px;
    font-weight:700;

    text-align:center;

    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}


.calendar-page .calendar-button:hover{
    border-color:#fff;

    background:#fff;

    color:var(--cp-navy) !important;

    transform:translateY(-1px);
}


/* =========================================================
   TEMPLATE LINK
========================================================= */

.calendar-page .template-link{
    margin:20px 0;
}


.calendar-page .template-link a{
    display:inline-flex;

    align-items:center;

    padding:11px 16px;

    border:1px solid var(--cp-navy);

    border-radius:9px;

    color:var(--cp-navy);
}


.calendar-page .template-link a:hover{
    background:var(--cp-navy);

    color:#fff;
}


/* =========================================================
   ORDER STEPS
========================================================= */

.calendar-page .calendar-steps{
    counter-reset:calendarSteps;

    display:grid;

    grid-template-columns:repeat(3,minmax(0,1fr));

    gap:12px;

    margin:24px 0 30px;

    padding:0;

    list-style:none;
}


.calendar-page .calendar-steps li{
    counter-increment:calendarSteps;

    position:relative;

    min-height:105px;

    padding:18px 16px 16px 57px;

    border:1px solid var(--cp-border);

    border-radius:12px;

    background:#fff;
}


.calendar-page .calendar-steps li::before{
    content:counter(calendarSteps);

    position:absolute;

    top:17px;
    left:15px;

    display:flex;

    align-items:center;

    justify-content:center;

    width:30px;
    height:30px;

    border-radius:50%;

    background:var(--cp-orange);

    color:#fff;

    font-size:13px;
    font-weight:800;
}


/* =========================================================
   TRUST BOX
========================================================= */

.calendar-page .trust-box{
    margin:55px 0;

    padding:36px;

    border-radius:var(--cp-radius-lg);

    background:
        linear-gradient(
            135deg,
            var(--cp-navy),
            #303e7d
        );

    color:#fff;

    box-shadow:
        0 18px 45px rgba(36,47,101,.18);
}


.calendar-page .trust-label{
    display:inline-block;

    margin-bottom:5px;

    color:#ffad97;

    font-size:11px;
    font-weight:800;

    letter-spacing:.12em;
}


.calendar-page .trust-box h2{
    margin:5px 0 18px;

    color:#fff;
}


.calendar-page .trust-box p{
    color:rgba(255,255,255,.86);
}


.calendar-page .trust-box strong{
    color:#fff;
}


.calendar-page .trust-box .calendar-button{
    margin-top:6px;
}


/* =========================================================
   FAQ
========================================================= */

.calendar-page .calendar-faq{
    margin-top:55px;
}


.calendar-page .calendar-faq > h2{
    margin-bottom:22px;
}


.calendar-page .faq-item{
    margin-bottom:10px;

    border:1px solid var(--cp-border);

    border-radius:11px;

    background:#fff;

    overflow:hidden;
}


.calendar-page .faq-item summary{
    position:relative;

    padding:16px 50px 16px 18px;

    color:var(--cp-navy);

    font-family:"Poppins",Arial,sans-serif;

    font-size:15px;
    font-weight:700;

    cursor:pointer;

    list-style:none;
}


.calendar-page .faq-item summary::-webkit-details-marker{
    display:none;
}


.calendar-page .faq-item summary::after{
    content:"+";

    position:absolute;

    top:50%;
    right:18px;

    transform:translateY(-50%);

    color:var(--cp-orange);

    font-size:25px;
    font-weight:400;

    line-height:1;
}


.calendar-page .faq-item[open] summary::after{
    content:"−";
}


.calendar-page .faq-item[open] summary{
    border-bottom:1px solid var(--cp-border);

    background:#f8f9fc;
}


.calendar-page .faq-item > div{
    padding:16px 18px;
}


.calendar-page .faq-item > div p{
    margin:0;
}


/* =========================================================
   FINAL CTA
========================================================= */

.calendar-page .calendar-cta{
    position:relative;

    margin:60px 0 10px;

    padding:45px 40px;

    border-radius:var(--cp-radius-lg);

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(229,66,32,.28),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            #1c2554,
            var(--cp-navy)
        );

    color:#fff;

    text-align:center;

    overflow:hidden;
}


.calendar-page .cta-eyebrow{
    display:block;

    margin-bottom:8px;

    color:#ffb6a6;

    font-size:11px;
    font-weight:800;

    letter-spacing:.12em;
}


.calendar-page .calendar-cta h2{
    max-width:760px;

    margin:0 auto 16px;

    color:#fff;
}


.calendar-page .calendar-cta > p{
    max-width:760px;

    margin:0 auto 10px;

    color:rgba(255,255,255,.82);
}


.calendar-page .calendar-cta > a{
    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-height:52px;

    margin-top:20px;

    padding:13px 25px;

    border:2px solid var(--cp-orange);

    border-radius:10px;

    background:var(--cp-orange);

    color:#fff;

    font-family:"Poppins",Arial,sans-serif;

    font-weight:700;

    transition:
        background .2s ease,
        color .2s ease,
        border-color .2s ease,
        transform .2s ease;
}


.calendar-page .calendar-cta > a:hover{
    border-color:#fff;

    background:#fff;

    color:var(--cp-navy);

    transform:translateY(-2px);
}


.calendar-page .cta-company{
    margin-top:28px;

    padding-top:22px;

    border-top:1px solid rgba(255,255,255,.18);
}


.calendar-page .cta-company p{
    margin:5px 0;

    color:rgba(255,255,255,.85);
}


.calendar-page .cta-company strong{
    color:#fff;
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:900px){

    .calendar-page .size-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }


    .calendar-page .size-card:last-child{
        grid-column:1 / -1;

        max-width:520px;

        width:100%;

        margin:0 auto;
    }


    .calendar-page .calendar-steps{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }


    .calendar-page .price-note{
        align-items:flex-start;

        flex-direction:column;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px){

    .calendar-page{
        padding:15px 14px 40px;

        font-size:15px;
    }


    .calendar-page h2{
        margin-top:40px;

        font-size:27px;
    }


    .calendar-page h3{
        font-size:19px;
    }


    .calendar-page .calendar-list{
        grid-template-columns:1fr;
    }


    .calendar-page .size-grid{
        grid-template-columns:1fr;
    }


    .calendar-page .size-card:last-child{
        grid-column:auto;

        max-width:none;
    }


    .calendar-page .calendar-price-section{
        margin:45px 0;

        padding:27px 16px 20px;
    }


    .calendar-page .calendar-price-section::before{
        left:16px;
        right:16px;
    }


    .calendar-page .price-size-info{
        grid-template-columns:1fr;
    }


    .calendar-page .price-size-info > div{
        display:flex;

        align-items:center;

        justify-content:space-between;

        gap:15px;

        text-align:left;
    }


    .calendar-page .price-size-info span{
        margin:0;
    }


    .calendar-page .calendar-price-table{
        min-width:610px;

        font-size:13px;
    }


    .calendar-page .calendar-price-table thead th,
    .calendar-page .calendar-price-table tbody td{
        padding:12px 10px;
    }


    .calendar-page .price-note{
        padding:18px;
    }


    .calendar-page .calendar-button{
        width:100%;
    }


    .calendar-page .calendar-steps{
        grid-template-columns:1fr;
    }


    .calendar-page .calendar-steps li{
        min-height:auto;
    }


    .calendar-page .trust-box{
        padding:28px 20px;
    }


    .calendar-page .calendar-cta{
        padding:35px 20px;
    }


    .calendar-page .calendar-cta > a{
        width:100%;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:420px){

    .calendar-page{
        padding-left:10px;
        padding-right:10px;
    }


    .calendar-page h2{
        font-size:24px;
    }


    .calendar-page .calendar-price-section{
        padding-left:12px;
        padding-right:12px;
    }


    .calendar-page .calendar-price-table{
        min-width:570px;
    }


    .calendar-page .faq-item summary{
        padding-left:14px;
        padding-right:45px;

        font-size:14px;
    }

}/* End custom CSS */