/* Import Base styles */
@import url(global.css);

/* Import Header styles */
@import url(header.css);




/*----------------------------  Start Hero  -----------------------------*/

.hero #backtotop {
    position: relative;
    
}
.hero video {
    width: 100%;
    /* height: 100vh; */
    margin-bottom: -8px;
}

.hero_inner {
    position: absolute;
    top: 50%;
    /* background: red; */
    width: 100%;
/*     min-height: 200px; */
    text-align: center;
    left: 50%;
    transform: translate(-50%, -50%);
}

.hero_inner .hero_heading, .hero_inner .hero_des{color: #fff;}
.hero_inner .hero_heading {
    font-size: 50px;
    text-transform: uppercase;
}

.hero_inner .hero_des {
    margin-bottom: 20px;
    font-size: 27px;
}

.hero_wrapper {
    display: flex;
    justify-content: center;
}

.hero_wrapper .btn {
    margin-inline-end: 17px;
    padding: 8px 27px 10px;
    font-size: 26px;
}


.hero {position:relative}
.hero::after {
    position: absolute;
    background: #000000;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    content: "";
    opacity: .33;
}
.hero .hero_inner{z-index:999}
/*----------------------------  End Hero  -----------------------------*/




/*------------------------------------ Start About --------------------------*/

.about_h {
padding: 70px 0 90px;
text-align: center;
}

.about_h .sect_heading {
margin-bottom: 53px;
position: relative;
}

.about_h .sect_heading h2 {
font-size: 50px;
font-weight: 700;
}

.about_h .sect_heading h2 span {
color: #f57c00;
}

.about_h .des p {
font-size: 20px;
font-weight: 500;
line-height: 28px;
}

.about_h .sect_heading::after {
    content: "";
    position: absolute;
    left: calc(50% - 53px);
    bottom: -21px;
    width: 219px;
    height: 6px;
    background-image: url(../images/title_lined_before.svg);
    transform: translateX(-50%);
    background-size: cover;
}

.about_h .sect_heading::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -22px;
    width: 290px;
    height: 6px;
    background-image: url(../images/title_lined.svg);
    transform: translateX(-50%);
    background-size: cover;
}

/*------------------------------------ End About --------------------------*/


/*------------------------------------ Start facts  --------------------------*/

.facts{
    background: #003666;
    padding: 50px;
}

.facts .sect_heading {
margin-bottom: 43px;
position: relative;
}

.facts .sect_heading h2 {font-size: 50px;font-weight: 700;text-align: center;color: #fff;margin-bottom: 42px;}

.facts .sect_heading h2 span {
color: #f57c00;
}

.facts .sect_heading p {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    max-width: 1151px;
    margin: 61px auto;
}


.facts .des p {
font-size: 20px;
font-weight: 500;
line-height: 28px;
}

.facts .sect_heading::after {
    content: "";
    position: absolute;
    left: calc(50% - 38px);
    bottom: 90px;
    width: 368px;
    height: 6px;
    background-image: url(../images/title_lined_before.svg);
    transform: translateX(-50%);
    background-size: cover;
}

.facts .sect_heading::before {
    content: "";
    position: absolute;
    left: 51%;
    bottom: 90px;
    width: 430px;
    height: 6px;
    background-image: url(../images/title_lined.svg);
    transform: translateX(-50%);
    background-size: cover;
}

.fact_item {
    border: 37px solid #F57C00;
    border-radius: 100%;
    text-align: center;
    color: #fff;
    width: 309px;
    height: 309px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 29px;
    margin: 40px auto;
}

span.animate_num {
    display: inline-block;
}


.fact_item img {
    width: 56px;
    margin-bottom:10px
}

.fact_item h2 {
    font-size: 30px;
    font-weight: 700;
}


/*------------------------------------ End facts --------------------------*/



/*------------------------------------ Start business lines --------------------------*/
.business_lines{padding: 50px 0;}

.smi_lined{position: relative;}
.smi_lined h2{ text-align: left; font-weight: 700; font-size: 40px;margin-bottom: 56px;}
.smi_lined::before {
    content: "";
    position: absolute;
    left: 0;
    top: -8px;
    width: 115px;
    border: 4px solid #F57C00;
}


.line_item {
    position: relative;
    margin-bottom: 40px;
        transition: all .5s linear;
}

.line_item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .4);
    z-index: 6;
}

.line_item .item_wrap {
    position: absolute;
    left: 22px;
    bottom: 21px;
    z-index: 66;
    text-align: left;
}

.line_item img {
    width: 100%;
    max-height: 548px;
    object-fit: cover;
   transition: all .5s linear;
}

.line_item .item_wrap h2 {
    font-weight: 700;
    font-size: 26px;
    color: #fff;
    margin-bottom: 2px;
}

.line_item .item_wrap .btn_icon {
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    justify-content: flex-start;
    text-align: left;
}

.line_item .item_wrap .btn_icon:hover::before {content: none;}

.line_item .item_wrap .btn_icon i {
    padding-inline-start: 10px;
    padding-top: 6px;
    color: #F57C00;
    font-size: 18px;
    
}
/* hover */
.line_item a{  overflow:hidden;display:block;}

.line_item:hover img{transform: scale(1.2);}

/*------------------------------------ End business lines --------------------------*/

/*------------------------------------ Start section unknown --------------------------*/
.sect_unkown {
    text-align: left;
    background: #003666;
    color: #fff;
    padding: 60px 0;
}

.sect_unkown .heading {
    margin-bottom: 35px;
    font-size: 48px;
    font-weight: 700;
}

.sect_unkown .heading h2 {
    /* border-bottom: 9px solid #F57C00; */
    position: relative;
    font-weight: 700;
    font-size: 45px;
}

.sect_unkown .heading h2::before {
    content: "";
    position: absolute;
    left: 0;
    top: -12px;
    width: 79px;
    border-bottom: 7px solid #F57C00;
    border-radius: 10px;
}

.cont_item{
    margin: 40px auto;
}
.cont_item .icon {
    width: 166px;
    height: 166px;
    border-radius: 100%;
    background: #F57C00;
    border: 1px solid #F57C00;
    margin-bottom: 20px;
    justify-content: center;
    display: flex;
    align-items: center;
    
}

.cont_item h2 {
    margin-bottom: 13px;
    font-size: 28px;
}

.cont_item p {
    font-size: 16px;
}

/*------------------------------------ End section unknown --------------------------*/

/*------------------------------------ Start Partners --------------------------*/
.partners{
padding: 60px 0;
}
  .partners .container {
    padding-right: 99px;
    padding-left: 99px;
  }
.brands_slider {
    margin-bottom: 60px;
    margin-top: 75px;
}
.partners .heading {
    margin-bottom: 35px;
    font-size: 48px;
    font-weight: 700;
}

.partners .heading h2 {
    /* border-bottom: 9px solid #F57C00; */
    position: relative;
    font-weight: 700;
    font-size: 45px;
    text-align: left;
}

.partners .heading h2::before {
    content: "";
    position: absolute;
    left: 0;
    top: -12px;
    width: 79px;
    border-bottom: 7px solid #F57C00;
    border-radius: 10px;
}

.partners .parts {
    display: flex;
    justify-content: center;
    column-gap: 27px;
    margin-top: 90px;
}

.partners .brand_item {
  padding-left: 17px;
}
.partners .brand_item img {
  width: 144px !important;
  object-fit: cover;
  height: 83px;
}
.partners .owl-nav {
  margin-top: 0;
}
.partners .owl-nav button {
  position: absolute;
  top: 50%;
  width: 70px;
}
.partners .owl-nav button:hover {
  background: transparent !important;
}
.partners .owl-nav button.owl-prev {
  right: -100px;
  transform: translateY(-50%);
}
.partners .owl-nav button.owl-next {
  left: -100px;
  transform: translateY(-50%) rotate(180deg);
}
.partners .owl-nav img {
  filter: invert(1);
}

/*------------------------------------ End Partners --------------------------*/


/*------------------------------------ Start CTA Section --------------------------*/

.cta{padding: 60px 0;background: #F2F2F2;text-align: left;}
.cta .cta_wrap{max-width: 366px;margin: 0 auto;}
.cta .cta_wrap h2{font-size: 26px;font-weight: 700;}
.cta .cta_wrap_2 {display:flex;}
.cta .cta_wrap_2 h2{max-width: 366px; margin: 0 auto;font-size: 26px;font-weight: 400;}
.cta .cta_wrap_2 .btn {
    width: 183px;
    background: #F57C00;
    border-color: #F57C00;
    font-size: 22px;
    font-weight: 400;
}

/*------------------------------------ End CTA Section --------------------------*/

/*---------------------------------- Start Footer  ------------------------*/
.main_foot {
    background: #5A5A5A;
    position: relative;
    padding: 50px 0 70px;
    text-align: left;
}

.main_foot::before {
    content: "";
    position: absolute;
    bottom: -70px;
    left: 50%;
    transform: translateX(-50%);
    background-image: url(../images/map.svg);
    background-size: cover;
    width: 394px;
    height: 263px;
}

h2.foot_heading {
    font-size: 16px;
}

.foot_body a {
    display: block;
}



h4.foot_heading {
    font-size: 16px;
    font-weight: 400;
    color: #fff;
}

h2.foot_subheading {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    position: relative;
    margin-bottom: 14px;
}



h2.foot_subheading::after {
    content: "";
    position: absolute;
    left: 0;
    top: 23px;
    width: 39px;
    border-bottom: 4px solid #CC6C20;
    border-radius: 10px;
}

.foot_body {
    font-size: 16px;
    color: #fff;
}

.copyrights {
    text-align: center;
    background: #222222;
    color: #fff;
    padding: 23px 0;
    font-size: 15px;
}

.copyrights p a {
    color: #4541F1;
}

.foot_body a {
    font-size: 16px;
    color: #fff;
}

.foot_body a i {
    padding-inline-end: 4px;
}

.foot_body h4 {
    font-size: 16px;
    margin: 12px 0;
}

.social {
    display: flex;
    grid-gap: 13px;
}

.social a {
    width: 32px;
    height: 32px;
    background: #fff;
    color: #5A5A5A;
    border-radius: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.social a i {
    font-size: 20px;
}

.item_foot {
    margin: 40px auto;
}

/* float icons */
.fixed-icone {
position: fixed;
top: 65%;
/* transform: translateY(-50%); */
left: 30px;
z-index: 99;
animation: updown-i 4s infinite ease-in-out;
}

@keyframes updown-i {

0%,
100% {
transform: translateY(-12px);
}

50% {
transform: translateY(12px);
}
}

.fixed-icone a {
width: 47px;
height: 47px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 16px;
background: linear-gradient(180deg, #61FD7D 0%, #2BB826 100%);
border: 1px solid #DADADA;
box-shadow: 0px 5.41px 5.41px 0px #4AED363D;
color: #fff;
font-size: 22px;
border-radius: 10px;
}

.fixed-icone a.phone_link {
box-shadow: 0px 5.41px 5.41px 0px #CCB26633;
border: 0.74px solid #DADADA;
color: #fff;
background: linear-gradient(180deg, #363636 0%, #2D2D2D 100%);
}

.fixed-icone a i {
font-size: 25px;
}
.fixed-icone a.phone_link i {
font-size: 19px;
}

/*---------------------------------- End Footer  ------------------------*/

/*----------------------- start breadcrumb ---------------------*/
.bread_gen  {
    position: relative;
    padding: 100px 0;
    text-align: center;
    background-size: cover;
    background-repeat: no-repeat;
   height: 317px;
    /* background-attachment: fixed; */
}
.bread_gen .container{height:100%}

.bread_gen::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0, .6);
    opacity: .4;
}
.bread_gen *{position:relative;z-index:9 }

.bread_gen .bread_txt {
    display:flex;flex-direction:column;justify-content:center;align-items:center;height: 100%;max-width: 855px;margin: 0 auto;padding: 0 12px;
    
    }

.bread_gen .bread_txt h2 {
/*     color: var(--sec-color); */
	color: #fff;
    font-size: 50px;
    font-weight: 700;
}
.bread_gen  .bread_txt p {color: #fff;font-size: 18px;padding-top: 12px;line-height: 1.7;}

/*-------------------- Start Pages ---------------------------*/
.body_inner{
    padding: 70px 0;
}

/* about us page */
.about_page.body_inner {
    padding: 0 0 70px;
}

.about_story {
    text-align: left;
    background: #F2F2F2;
    padding: 50px 0;
}

.about_story img {
    border-radius: 28px;
}

.about_story .im_wrap{margin: auto;text-align: center;}

.about_story .speci_head{
    font-size: 40px;font-weight: 700;
    margin-bottom: 40px;
}

.speci_head span{color: var(--sec-color);}
.speci_head{position: relative;}
.speci_head::after {content: "";position: absolute;left: calc(50% - 209px);bottom: -17px;width: 331px;height: 6px;background-image: url(../images/title_lined_before.svg);transform: translateX(-50%);background-size: cover;}

.speci_head::before {content: "";position: absolute;left: 49%;bottom: -17px;width: 114px;height: 6px;background-image: url(../images/title_lined.svg);transform: translateX(-50%);background-size: cover;}

.about_story p {
    font-weight: 500;
    font-size: 20px;
    line-height: 28px;
}

.messin_vesion {
    padding: 60px 0;
}

.about_page.body_inner {
    padding: 0 0 70px;
}

.messin_vesion_wrap {
    position: relative;
}

.messin_vesion_wrap h2 {
    font-size: 40px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 29px;
    position: relative;
    /* display: inline-block; */
    margin: 0 auto 29px;
}

.messin_vesion_wrap h2::before {
    content: "";
    position: absolute;
    left: 209px;
    bottom: -8px;
    width: 70px;
    border: 4px solid #F57C00;
    transform: translateX(-50%);
    /* margin: 0 auto; */
}
.messin_vesion_wrap.wrap_2 h2::before {
    left: 230px;


    /* margin: 0 auto; */
}

.messin_vesion_wrap p {
    text-align: left;
    font-size: 18px;
    font-weight: 500;
    max-width: 600px;
    margin: 0 auto;
}

.messin_vesion .lined {
    width: 4px;
    background: #F57C00;
    height: 100%;
}

.stagey_values{
        background: #003666;
    color: #fff;
    padding: 70px 0;
}

.strategy {

}

.strategy .txt_wrap h2{
    position: relative;
    font-size: 40px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 29px;
    margin-left: -218px;
}
.strategy .txt_wrap h2::before {
    content: "";
    position: absolute;
    left: 332px;
    bottom: -10px;
    width: 70px;
    border: 4px solid #F57C00;
    transform: translateX(-50%);
    /* margin: 0 auto; */
    border-radius: 3px;
}

.strategy .num_wrap h2 {
    font-size: 150px;
    text-align: center;
    font-weight: 700;
}

.strategy .num_wrap h5 {
    margin: 0 auto;
    display: block;
    position: absolute;
    right: 53px;
    bottom: -24px;
    font-size: 64px;
    font-weight: 600;
}

.strategy .num_wrap {
    /* display: flex; */
    /* flex-direction: column; */
    position: relative;
}

.strategy .txt_wrap .btn {
    margin: 26px -39px 0 76px;
    background: #F57C00;
    max-width: 163px;
}

.strategy .txt_wrap p {
    text-align: left;
    max-width: 475px;
    margin: 0 auto;
}


.stagey_values .values {
    text-align: center;
    padding: 66px 0 21px;
}




.values h2 {
    /* border-bottom: 9px solid #F57C00; */
    position: relative;
    font-weight: 700;
    font-size: 45px;
    margin: 40px 0;
}

.values h2::before {
    content: "";
    position: absolute;
    left: calc(50% - 100px);
    top: 56px;
    width: 79px;
    border-bottom: 7px solid #F57C00;
    border-radius: 10px;
    transform: translateX(-50%);
}

.vals_rep .val_item {
    margin: 40px auto;
}
.vals_rep .val_item .icon {
    width: 166px;
    height: 166px;
    border-radius: 100%;
    background: #F57C00;
    border: 1px solid #F57C00;
    margin: 20px auto;
    justify-content: center;
    display: flex;
    align-items: center;
}

.vals_rep .val_item h2 {
    margin-bottom: 13px;
    font-size: 32px;
}



.news_update {
    padding: 0;
    text-align: left;
}

.news_update .btn {
    max-width: 150px;
    background: #fff;
    color: #000;
}

.news_update .btn:hover {
    border: 1px solid;
}

.news_bg_color {
    background-image: url(../images/news_bg.svg);
    background-size: cover;
    padding: 41px 28px;
    background-position: right;
    width: 100%;
	height:250px
}

.nws_wrap{display: flex;}

.news_bg_ima {
    width: 100%;
    margin-left: -192px;
}

.news_bg_ima img {
    width: 100%;
    min-height:236px;
	height: 250px;
}

.news_bg_color h2 {
    font-weight: 700;
    font-size: 29px;
    margin-bottom: 27px;
}

.news_update .btn {
    max-width: 173px;
    background: #fff;
    color: #000;
    font-size: 22px;
}
/* timeline */

    .timeline-wrapper {
      overflow-x: auto;
      padding: 40px 0;
    }

.timeline {
    display: flex;
    position: relative;
    align-items: center;
    border-top: 3px solid #0d3f68;
    padding-top: 0;
    min-width: max-content;
    justify-content: center;
}

    .event {
      flex: 0 0 auto;
      width: 200px;
      text-align: center;
      position: relative;
      cursor: pointer;
    }

    .event::before {
      content: '';
      position: absolute;
      top: -11px; /* Center bullet on line */
      left: 50%;
      transform: translateX(-50%);
      width: 26px;
      height: 26px;
      border-radius: 50%;
      background-color: #fff;
      border: 4px solid #0d3f68;
      z-index: 2;
      transition: all 0.3s ease;
    }

    .event.active::before {
      background-color: orange;
      border-color: orange;
    }

    .event .year {
	margin-top: 40px;
    font-weight: bold;
    color: #0d3f68;
    font-size: 29px;
    }

    .event .desc {
    font-size: 0.9rem;
    color: #555;
    min-height: 100px; 
    }

    .timeline-wrapper::-webkit-scrollbar {
      height: 6px;
    }

    .timeline-wrapper::-webkit-scrollbar-thumb {
      background: #ccc;
      border-radius: 10px;
    }

    /*------------  Start products ---------------------*/

    .products_page.body_inner {
    padding: 0 0 0px;
}


.products_page .cont_item {
    text-align: center;
}

.products_page .cont_item .icon_m img{width: 111px;}    

.products_page .cont_item h2 {
    font-size: 48px;
    font-weight: 700;
    margin: 15px 0 1px;
}
.products_page .cont_item  h2 u{text-decoration: none;}

.products_page .cont_item  p{font-size: 16px;}

/* philosophy */


.philosophy_page section {
    min-height: 100vh;
    background-color: rgb(2, 6, 23);
    text-align: center;
    padding: 5rem 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.philosophy_page .grain-bg {
/*     background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E"); */
	background-image: url("https://sipoegypt.com/wp-content/themes/sipo/assets/images/phy_bg.jpg");
/*     opacity: 0.15; */
    pointer-events: none;
    position: absolute;
    inset: 0;
/* 	background-color: #D9D9D9; */
}

.philosophy_page .header-text {
    color: rgb(148, 163, 184);
    font-size: 1.125rem;
    max-width: 32rem;
    margin: 0 auto 0.5rem;
    text-transform: capitalize;
    display: flex;
    align-items: center;
    justify-content: center;
}

.philosophy_page .header-text svg {
    color: #ff7f50;
    margin-left: 0.75rem;
    width: 1.5rem;
    height: 1.5rem;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    fill: none;
}

.philosophy_page h1 {
    color: white;
    font-size: clamp(2.25rem, 5vw, 3.75rem);
    font-weight: 600;
    max-width: 48rem;
    margin: 0 auto 4rem;
    line-height: 1.2;
	position:relative;
}

.philosophy_page .grid {
    display: grid;
    gap: 1.25rem;
    max-width: 80rem;
    margin: 0 auto;
    text-align: left;
}

@media (min-width: 640px) {
    .philosophy_page .grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .philosophy_page .grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .philosophy_page section {
        padding: 5rem 0;
    }
}

.philosophy_page .card {
    background-color: rgba(15, 23, 42, 0.5);
    backdrop-filter: blur(8px);
    padding: 2.5rem;
    position: relative;
    transform: translateY(30px);
    opacity: 0;
    animation: fadeInUp 0.6s ease forwards;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.philosophy_page .card:nth-child(1) { animation-delay: 0.1s; }
.philosophy_page .card:nth-child(2) { animation-delay: 0.2s; }
.philosophy_page .card:nth-child(3) { animation-delay: 0.3s; }
.philosophy_page .card:nth-child(4) { animation-delay: 0.4s; }
.philosophy_page .card:nth-child(5) { animation-delay: 0.5s; }
.philosophy_page .card:nth-child(6) { animation-delay: 0.6s; }

@keyframes fadeInUp {
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.philosophy_page .card:hover {
    transform: scale(1.02) translateY(-5px);
    box-shadow: 0 20px 40px -15px rgba(184, 216, 216, 0.3);
}

.philosophy_page .card::before {
    content: '';
    position: absolute;
    inset: 0;
    transition: 0.8s cubic-bezier(0.34, 1.56, 0.64, 1);
    z-index: 0;
/*     background: linear-gradient(135deg, #ff7f50 0%, #ff6b6b 100%); */
	background:linear-gradient(135deg, #f57c00 0%, #e65100 100%);

    opacity: 0.9;
}

.philosophy_page .card:nth-child(1)::before {
    bottom: 0;
    right: 0;
    clip-path: circle(calc(6.25rem + 7.5vw) at 100% 100%);
}

.philosophy_page .card:nth-child(2)::before {
    bottom: 0;
    left: 0;
    clip-path: circle(calc(6.25rem + 7.5vw) at 0% 100%);
}

.philosophy_page .card:nth-child(3)::before {
    top: 0;
    right: 0;
    clip-path: circle(calc(6.25rem + 7.5vw) at 100% 0%);
}

.philosophy_page .card:nth-child(4)::before {
    top: 0;
    left: 0;
    clip-path: circle(calc(6.25rem + 7.5vw) at 0% 0%);
}

.philosophy_page .card:nth-child(5)::before {
    bottom: 0;
    right: 0;
    clip-path: circle(calc(6.25rem + 7.5vw) at 100% 100%);
}

.philosophy_page .card:nth-child(6)::before {
    bottom: 0;
    left: 0;
    clip-path: circle(calc(6.25rem + 7.5vw) at 0% 100%);
}

.philosophy_page .card:hover::before {
    clip-path: circle(150% at 100% 100%);
}

.philosophy_page .card-content {
    position: relative;
}

@media (min-width: 1024px) {
    .philosophy_page .card-content {
        padding-right: 3rem;
    }

    .philosophy_page .card:nth-child(even) .card-content {
        padding-right: 0;
        padding-left: 3rem;
    }
}

.philosophy_page .icon {
    color: #ff7f50;
    width: 2rem;
    height: 2rem;
    margin-bottom: 1rem;
    transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    fill: none;
}

.philosophy_page .card:hover .icon {
    transform: scale(1.1) rotate(5deg);
    color: white;
}

.philosophy_page h2 {
    font-family: 'Playfair Display', serif;
    text-transform: capitalize;
    color: white;
    margin-bottom: 1rem;
    font-size: clamp(1.5rem, 3vw, 1.875rem);
    line-height: 1.2;
}

.philosophy_page .card p {
    color: rgb(148, 163, 184);
    margin-bottom: 1.5rem;
    transition: color 0.8s;
}

.philosophy_page .card:hover p {
    color: white;
}

.philosophy_page .btn {
    background-color: #b8d8d8;
    color: rgb(30, 41, 59);
    padding: 0.5rem 1.5rem;
    border-radius: 0.5rem;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    font-size: 1rem;
    position: relative;
    z-index: 10;
}

.philosophy_page .btn:hover {
    background-color: #a6c4c4;
}

.philosophy_page .btn-glow {
    position: relative;
}

.philosophy_page .btn-glow::after {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(135deg, #c4e3e3 0%, #a6c4c4 100%);
    border-radius: 0.5rem;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.philosophy_page .btn-glow:hover::after {
    opacity: 0.5;
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse {
    0%, 100% {
        opacity: 0.5;
    }
    50% {
        opacity: 0.2;
    }
}


/*------------------ Start Contact page --------------------*/
.contact_items .con_wrap .icon.mico1 img {
    width: 169px;
    height: 84px;
}
.contact_items .con_wrap .icon img {
    width: 84px;
    height: 84px;
    /* object-fit: contain; */
}

.leva_messa .heading h2{
    position:relative;
    font-size: 40px;
    font-weight: 600;
}

.leva_messa .heading h2::after {
    content: "";
    position: absolute;
    left: calc(50% - 57px);
    bottom: -21px;
    width: 331px;
    height: 6px;
    background-image: url(../images/title_lined_before.svg);
    transform: translateX(-50%);
    background-size: cover;
}

.leva_messa .heading h2::before {
    content: "";
    position: absolute;
    left: 56%;
    bottom: -21px;
    width: 355px;
    height: 6px;
    background-image: url(../images/title_lined.svg);
    transform: translateX(-50%);
    background-size: cover;
}

.leva_messa .heading h2 span {
    color: #f57c00;
}

.contact_items {
/*     text-align: center; */
	    margin: 0 auto;
      max-width: 1200px
}

.contact_items .con_wrap {
    margin: 0 auto;
    display: flex;
}

.contact_items .txt_wrap a {display: inline-block;width: 100%;font-size: 16px;}

.contact_items .txt_wrap {
    padding-inline-start: 6px;
    padding-top: 7px;
    text-align: left;
}

.contact_items .txt_wrap h4 {
    font-size: 21px;
    font-weight: 700;
}

.leva_messa {
    text-align: center;
    padding: 70px 0 30px;
    max-width: 850px;
    margin: 0 auto;
}

.heading p {
    padding: 40px 0;
    font-size: 15px;
}

.contact_form input {
    margin-bottom: 20px;
    border-radius: 14px;
    display: inline-block;
    width: 100%;
    padding: 17px;
    border: 1px solid #F2F2F2;
    background: #F2F2F2;
}

.contact_form input::placeholder {
    font-size: 20px;
    color: #000;
}

.contact_form textarea::placeholder {
    font-size: 20px;
    color: #000;
}

.contact_form textarea {
    margin-bottom: 24px;
    border-radius: 14px;
    display: inline-block;
    width: 100%;
    padding: 17px;
    border: 1px solid #F2F2F2;
    background: #F2F2F2;
    height: 100%;
}

.contact_form .form {
    /* margin-bottom: 42px; */
}

.info_con {
    padding: 31px;
}


.contact_form .btn {
    margin: 0 auto;
    padding: 12px 34px 15px;
    background: #F57C00;
    border-color: #F57C00;
    font-size: 23px;
}

.contact_form .nice-select {
    background: #f2f2f2;
    color: #000;
    font-size: 20px;
    border: 1px solid #F2F2F2;
    border-radius: 14px;
    text-align: left;
    padding: 5px 17px;
}

.contact_form .nice-select:after {
    right: 20px;
    left: auto;
    top: 8px;
    color: #F57C00;
    font-size: 27px;
}


/* ------------------ */
.philo_item.phy_1 img {
    width: 454px;
    object-fit: contain;
}

.philo_item.phy_1 .shp {height: 279px;}



/*----------------------30-6---------------*/
.page-item.active .page-link {
    background: #f57c00;
    border-color: #f57c00;
}

.page-link {
    color: #000;
}

.page-item:first-child .page-link {
    border-radius: 0;
}