@charset "utf-8";

/*..............embedded fonts..............*/

/*..............embedded fonts..............*/
/*..............custom fonts..............*/

@font-face {
    font-family: 'PorscheNext-Regular';
    src: url('../fonts/PorscheNext-Regular.eot');
    src: url('../fonts/PorscheNext-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/PorscheNext-Regular.woff2') format('woff2'),
        url('../fonts/PorscheNext-Regular.woff') format('woff'),
        url('../fonts/PorscheNext-Regular.ttf') format('truetype'),
        url('../fonts/PorscheNext-Regular.svg#PorscheNext-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'PorscheNext-Bold';
    src: url('../fonts/PorscheNext-Bold.eot');
    src: url('../fonts/PorscheNext-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/PorscheNext-Bold.woff2') format('woff2'),
        url('../fonts/PorscheNext-Bold.woff') format('woff'),
        url('../fonts/PorscheNext-Bold.ttf') format('truetype'),
        url('../fonts/PorscheNext-Bold.svg#PorscheNext-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}


/*..............custom fonts..............*/


:root {
    /* General Transitions */
    --transition-common: all 0.4s ease;

    /* Colors */
    --color-accent: #EEB433;
    --color-primary: #1A1A1A;
    --color-secondary: #373737;
    --color-tertiary: #F0F0F0 ;    
    /*--color-quaternary: ;
    --color-quinary: ; 
    --color-senary: ;  */


    /* Font Settings */

    --ff-title: 'PorscheNext-Bold';
    --ff-base: 'PorscheNext-Regular';
    --fw-regular: 400;
    --fw-bold: 700;

    /* Font Sizes */
    --f-size-XXXL: clamp(2.1875rem, 1.125rem + 5.3125vw, 5.375rem); /*86px-35px */
    --f-size-XXL: clamp(2.1875rem, 1.3975rem + 1.6479vw, 3.375rem); /* 54px-28px */
    --f-size-XL: clamp(1.375rem, 1rem + 1vw, 1.875rem); /* 30px-22px */
    --f-size-L: clamp(1.25rem, 1.162rem + 0.2817vw, 1.5rem);/* 24px-20px */
    --f-size-M: clamp(1.125rem, 1.081rem + 0.1408vw, 1.25rem); /* 20px-18px */
    --f-size-S: clamp(1rem, 0.956rem + 0.1408vw, 1.125rem);/*18px-16px*/
    --f-size-Body: clamp(1rem, 0.9712rem + 0.1282vw, 1.125rem);/*18px-16px*/

    /* Layout Adjustments */
    --margin-title: 0 0 25px 0;
    --margin-paragraph: 0 0 25px 0;
    --gap-60:60px;
    --gap-50:50px;
    --gap-40:40px;

    --border-radius-image: 10px;
    --padding-height: 100px;

    --btn-gradient: linear-gradient(90deg, #AF5CFD 0.53%, #349CD7 100%);

    /* Form Styling */
    --form-height: 56px;
    --form-font-color: #7C8799;
    --form-placeholder-color: #7C8799;
    --form-border-radious: 10px;
    --form-holder-bg: #FFF3E6;
}
@media only screen and (max-width:1601px) { 
  :root {
    --padding-height: 80px;
}
}
@media only screen and (max-width: 1399px) { 
  :root {
    --f-size-Body: 16px;
    --padding-height: 70px;
}
}
@media only screen and (max-width: 1199px) { 
  :root {
    --padding-height: 60px;
    --margin-title: 0 0 18px 0;
    --margin-paragraph: 0 0 18px 0;
}
}
@media only screen and (max-width: 767px) { 
  :root {
    --padding-height: 50px;
}
}

/*..............common styles..............*/
html { overflow-x: hidden; scroll-padding-top: 100px;}
html:has(.is-open) { height: 100svh; height: 100dvh; overflow-y: hidden; }
body.modal-open { height: 100vh; padding: 0 !important;}
body { margin: 0; padding: 0; font-family: var(--ff-base); font-size: var(--f-size-Body); font-weight: var(--fw-regular); color:var(--color-primary);overflow-x: hidden; letter-spacing: -0.01em;}
h1, h2, h3, h4, h5, h6 { font-family: var(--ff-title); margin: var(--margin-title); padding:0; line-height: 1.2; font-weight: var(--fw-regular); letter-spacing: -0.01em; }

h1{ font-size: var(--f-size-XXXL); /* 65px-38px */; } 
h2{ font-size: var(--f-size-XXL); /* 48px-32px */; /*text-transform: capitalize; */} 
h3{ font-size: var(--f-size-XL); /* 30px-26px */ }
h4{ font-size: var(--f-size-L);/* 24px-22px */}
h5{ font-size: var(--f-size-M); /* 20px-18px */}
h6{ font-size: var(--f-size-S);/*18px-16px*/}

p { margin: var(--margin-paragraph); line-height: 1.5;}
p:last-child { margin-bottom: 0; }
p strong { font-weight: var(--fw-bold); font-family: var(--ff-title);}

img{ max-width: 100%; user-select: none; -webkit-user-drag: none; }
figure { margin: 0; }
a, img{ border:0; text-decoration: none; outline: none;}
a, a:link, a:visited, a:focus, a:hover { color: var(--color-accent); outline: none; text-decoration: none; transition:var(--transition-common);}
a:hover{ text-decoration:none;}
ul{ padding: 0; margin: 0; list-style: none;}

.form-row{ margin-bottom: 24px;}
form label { margin-bottom: 7px; font-size: var(--f-size-M); font-family: var(--ff-title);}
.form-control{ font-size: var(--f-size-Body) !important; background-color: var(--bs-white) !important; border: 1px solid rgba(0, 0, 0, 0.2) !important; border-radius:10px; box-shadow: none !important; resize: none; padding: 10px 20px !important; color: var(--form-font-color)!important; }
input[type="submit"]{background-color: transparent; border: 0; color: #fff;  transition:var(--transition-common); outline: none; padding: 0; }
input:not([type="submit"]) { height: 58px !important; min-height: 58px !important; }

select.form-control {  font-size: var(--f-size-Body) !important; font-weight: var(--fw-regular); appearance: none; -webkit-appearance: none; height: 58px !important; padding-right: 50px !important; background-image: url(../images/down-arrow.svg); background-repeat: no-repeat; background-position: center right 15px; background-size: 28px;  }
textarea.form-control{ height: 200px !important; padding: 16px 20px !important;}
textarea::-webkit-scrollbar { display: none;}

input[type="checkbox"] { width: 18px; height: 18px !important; border: 1px solid #4D141F !important; border-radius: 3px !important; }
label.form-check-label { font-size: clamp(0.875rem, 0.76rem + 0.308vw, 1.125rem); margin-bottom: 0 !important; }
.form-check-input:checked[type=checkbox] { background-color: #4D141F !important; }

::placeholder { color: #7E7E7E !important; opacity: 1; display: none; }
::-ms-input-placeholder { color: #7E7E7E !important; display: none; }
textarea.form-control::placeholder { color: #7E7E7E !important; display: none; }





/* CF7 Not Valid */
.wpcf7-not-valid-tip { font-size: 16px; font-weight: var(--fw-light); margin-left: 26px; margin-top: 3px;}
.wpcf7-form .btn.dark-btn span.wpcf7-spinner { position: absolute; right: 0; background-color: #f0f0f075; } 
.wpcf7-not-valid { border-color: #dc3232 !important; }
.wpcf7-not-valid-tip { display: none; }
.wpcf7-form input.wpcf7-form-control.wpcf7-submit { position: absolute; inset: 0; -webkit-appearance: none; appearance: none; font-size: 0; }


/* --- only use for wordpress (Image alignment) --- */
.alignleft , .alignnone{float:left; margin:0 15px 10px 0;}
.alignright{float:right; margin:0 0 10px 15px;}
.aligncenter{margin:10px auto; display:block;}
/* --- only use for wordpress (Image alignment) --- */


/* CUSTOM CLASSES CSS */

.mb-30 { margin-bottom: 30px;}
.mt-60 { margin-top: 60px;}
.padding-common { padding-top: var(--padding-height); padding-bottom: var(--padding-height);}
.bg-common { background-repeat: no-repeat; background-size: cover; background-position: center center; }
.background-cover { background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important; }
.overlay-content { position: relative; z-index: 3; }
.responsive-image-wrapper { position: relative; overflow: hidden; }
.responsive-image-wrapper img { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sub-title { font-weight: var(--fw-regular); font-family: var(--ff-alex); font-size: var(--f-size-XXL); color: var(--color-accent); line-height: 1; margin-bottom: 0;}
.rounded-20 { border-radius: 20px;}
.rounded-30 { border-radius: 30px;}
.image-hover-effect { overflow: hidden;}
.image-hover-effect img { object-fit: cover; -webkit-transition: all 0.4s ease; -moz-transition: all 0.4s ease; -ms-transition: all 0.4s ease; -o-transition: all 0.4s ease; transition: all 0.4s ease; }
.image-hover-effect:hover img { transform: scale(1.05); }
.icon-hover-effect:hover img { animation: bouncing 0.5s 0.3s;}
@keyframes bouncing {
0%, 100% { transform: scale(1, 1); }
25% { transform: scale(0.9, 1.1); }
50% { transform: scale(1.1, 0.9); }
75% { transform: scale(0.95, 1.05); }
}
.bg-gray { background: var(--color-tertiary) !important;}
.bg-dark-blue { background: var(--color-tertiary); }
.text-white h2{ color: var(--color-white);}

.section-title h4 { color: var(--color-secondary); }
/* CUSTOM CLASSES CSS */


@media only screen and (min-width: 1600px) {
  .container{ max-width: 1420px;}
}

/* BUTTON STYLING */

:is(a.btn, .btn) { display: inline-flex; align-items: center; justify-content: center; gap: 12px; background-color: #ffffff !important; color: #1A1A1A !important; padding: 15px 30px !important; border-radius: 12px !important; font-family: var(--ff-base); font-weight: var(--fw-regular); font-size: var(--f-size-M); border: none !important; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15) !important; transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1); text-transform: none; line-height: 100%; cursor: pointer; isolation: isolate; }
:is(a.btn, .btn):hover { background-color: var(--color-accent) !important; color: #1A1A1A !important; transform: translateY(-2px); box-shadow: 0 6px 20px rgba(238, 180, 51, 0.35) !important; }
:is(a.btn, .btn) span { display: flex; align-items: center; justify-content: center; }
:is(a.btn, .btn) span img { width: 14px; height: 14px; transition: transform 0.3s ease; }
:is(a.btn:hover, .btn:hover) img { transform: translate(3px, -3px); }

:is(a.btn.dark-btn, .btn.dark-btn) { background-color: var(--color-primary) !important; color: var(--bs-white) !important; }
:is(a.btn.dark-btn, .btn.dark-btn):hover { box-shadow: 0 6px 20px rgb(0 0 0 / 35%) !important;}


.btn.submit-btn input[type="submit"] { background: transparent !important; padding: 0 !important; border: 0 !important; outline: none !important; color: inherit !important; line-height: 1; font-size: var(--f-size-ES); font-weight: var(--fw-semi-bold); color: var(--color-white); transition: var(--transition-common); }
.btn.submit-btn:hover input[type="submit"]{ color: var(--color-accent);}

/* BUTTON STYLING */

/* CHECKBOX AND RADIO BUTTON STYLES */
.builder_radiobox ul li label{ font-weight: normal;}
.builder_radiobox ul li input[type="radio"]{ opacity: 0;}
.builder_radiobox ul li input[type="radio"]:empty ~ label{ position:relative; float:left; cursor:pointer; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; padding: 0 0 0 22px;}
.builder_radiobox ul li input[type="radio"]:empty ~ label:before{ position:absolute; display:block; top:2px; bottom:0; left:0; content:""; width:16px; height:16px; background:url('../images/radiobutton.png') left top no-repeat;}
.builder_radiobox ul li input[type="radio"]:checked ~ label:before{ background:url('../images/radiobutton.png') left bottom no-repeat;}
/* CHECKBOX AND RADIO BUTTON STYLES */



/* SCROLL BAR DESIGN */

  /* width */
  ::-webkit-scrollbar {width: 8px; height: 4px; }
  /* Track */
  ::-webkit-scrollbar-track { background: #f5f5f5;}  
  /* Handle */
  ::-webkit-scrollbar-thumb {background: var(--color-accent); border-radius: 10px; }

/* SCROLL BAR DESIGN */
 

/* ====== START HEADER CSS ====== */
/* DESKTOP MENU */

.main-header { position: fixed; top: 0; z-index: 999; width: 100%; padding-block: 57px; -webkit-transition: all 0.4s ease; -moz-transition: all 0.4s ease; -ms-transition: all 0.4s ease; -o-transition: all 0.4s ease; transition: all 0.4s ease; }
.main-header.fixed { background-color: var(--bs-black); padding-block: 30px;}
/* Toogle Menu */
.main-header .overlay { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.45); opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease; z-index: 40; }
.main-header .overlay.is-visible { opacity: 1; visibility: visible; }
.hamburger-btn { background: none; border: none; cursor: pointer; display: flex; align-items: center; gap: 20px; }
.hamburger-btn-box { display: flex; flex-direction: column; gap: 5px;}
.hamburger-btn span { display: block; width: 26px; height: 2px; background: #fff; border-radius: 2px; transition: transform 0.25s ease, opacity 0.25s ease; }
/*.hamburger-btn.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.hamburger-btn.is-active span:nth-child(2) { opacity: 0; }
.hamburger-btn.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); } */
.hamburger-btn .menu-text { color: var(--bs-white); }
.top-actions { display: flex; align-items: center; gap: 18px; font-size: 14px; }
.side-menu .search-panel { display: none;}

  /* ---- Side menu panel ---- */
.side-menu { position: fixed; top: 0; left: 0; height: 100dvh; width: min(510px, 90vw); background: #ffffff; transform: translateX(-100%); transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1); z-index: 50; box-shadow: 2px 0 24px rgba(0, 0, 0, 0.15); padding: 20px 0 30px; border-radius: 0 30px 30px 0; z-index: 99999;}
.side-menu.is-open { transform: translateX(0); }
.side-menu-close { background: none; border: none; font-size: 50px; line-height: 1; color: #000; cursor: pointer; display: flex; width: 45px; height: 25px; align-items: center; justify-content: center; margin: 0 30px 0 auto; }
.side-menu .main-menu { max-width: 415px; margin-inline: auto;overflow-y: auto; max-height: calc(100% - 60px); margin-block: 30px; }
.main-menu > ul { list-style: none; margin: 0; padding: 0 20px; }
.main-menu > ul > li { margin-top: 8px; position: relative; border-radius: 6px; }
.main-menu > ul > li > a  { display: flex; align-items: center; justify-content: space-between; padding: 30px; border-radius: 6px; text-decoration: none; color: var(--color-primary); font-size: var(--f-size-L); font-family: var(--ff-title); transition: background 0.2s ease; }
.main-menu > ul > li > a:after { content: ""; position: absolute; right: 30px; top: 50%; border: solid #7E7E7E; border-width: 0 4px 4px 0; display: inline-block; padding: 7px; transform: translateY(-50%) rotate(-45deg); -webkit-transform: translateY(-50%) rotate(-45deg); }
.main-menu > ul > li > a:hover { background: #f5f5f5; }
.main-menu ul > li.current-menu-item { background: var(--color-tertiary);}

/* Search Panel (Overlay over header) */
.search-panel { position: absolute; top: 100%; left: 0; right: 0; width: 100%; height: 100%; background: var(--color-tertiary); /* matching --color-primary/charcoal */ backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); z-index: 1000; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transform: translateY(-20px); transition: opacity 0.3s cubic-bezier(0.25, 1, 0.5, 1), transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), visibility 0.3s; }
.search-panel.open { opacity: 1; visibility: visible; transform: translateY(0); }
.search-inner { display: flex; align-items: center; gap: 20px; width: 90%; /* Replicate Bootstrap container logic for layout alignment */ padding-right: var(--bs-gutter-x, .75rem); padding-left: var(--bs-gutter-x, .75rem); margin-right: auto; margin-left: auto; }
.search-inner svg { width: 24px; height: 24px; stroke: var(--color-secondary); /* #90B766 */ flex-shrink: 0; }
.search-inner input { flex: 1; border: none; background: transparent; font-size: 20px; font-family: var(--ff-base); color: var(--color-primary); outline: none; border-bottom:1px solid var(--color-primary); padding-block: 8px; transition: border-color 0.3s ease; }
.search-inner input:focus { border-color: var(--color-secondary); }

/* Explicit placeholder styling to bypass global display: none */
/* #searchInput::placeholder { display: block !important; opacity: 1 !important; color: rgba(255, 255, 255, 0.4) !important; } */
.search-inner .close-btn { background: #cdcdcd; border: none; color: var(--color-primary); width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease; flex-shrink: 0; }
.search-inner .close-btn:hover { background: var(--color-secondary); transform: rotate(90deg); color: #fff; }
.search-inner .close-btn svg { width: 22px; height: 22px; stroke: currentColor; }

/* Search Toggle Button */
.search-toggle { background: none; border: none; color: #fff; width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease; padding: 0; }
.search-toggle svg { width: 20px; height: 20px; stroke: #fff; transition: transform 0.3s ease, stroke 0.3s ease; }
.search-toggle:hover svg { transform: scale(1.1); }

/* Language Selector Dropdown */
.lang-selector { position: relative; }
.lang-toggle { background: none; border: none; color: #fff; padding: 6px 12px; display: inline-flex; align-items: center; gap: 6px; font-family: var(--ff-base); font-size: 16px; font-weight: var(--fw-medium); cursor: pointer; border-radius: 30px; transition: all 0.3s ease; }
.lang-toggle:hover { background: rgba(255, 255, 255, 0.08); }
.lang-toggle svg.globe-icon { width: 18px; height: 18px; stroke: currentColor; }
.lang-toggle svg.chevron-icon { width: 12px; height: 12px; stroke: currentColor; transition: transform 0.3s ease; }
.lang-selector.show .lang-toggle svg.chevron-icon, .lang-toggle[aria-expanded="true"] svg.chevron-icon { transform: rotate(180deg); }
.lang-selector .dropdown-menu { display: block; right: 0; opacity: 0; visibility: hidden; transform: translateY(10px); pointer-events: none; background: rgba(56, 48, 51, 0.95); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 12px; box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3); padding: 8px; min-width: 100px; margin-top: 8px !important; transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s; }
.lang-selector.show .dropdown-menu, .lang-selector .dropdown-menu.show { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
.lang-selector .dropdown-item { color: rgba(255, 255, 255, 0.8) !important; border-radius: 8px; padding: 8px 16px; font-size: 14px; font-family: var(--ff-base); font-weight: var(--fw-regular); transition: all 0.2s ease; text-align: center; }
.lang-selector .dropdown-item:hover { background: rgba(255, 255, 255, 0.08) !important; }
.lang-selector .dropdown-item.active { background: var(--color-secondary) !important; color: #fff !important; font-weight: var(--fw-semi-bold); }


.header-row {  width:100%; display: flex; flex-wrap: wrap; align-items: center;  justify-content: space-between; }
.main-header .hdr-lft { flex: 1;}
.main-header .hdr-rt { flex: 1; display: flex; justify-content: end; align-items: center; gap: 20px; }
.main-header .logo { transform: scale(1); transform-origin: top center; -webkit-transition: var(--transition-common); -moz-transition: var(--transition-common); -ms-transition: var(--transition-common); -o-transition: var(--transition-common); transition: var(--transition-common); }
.main-header .logo a { display: inline-block; -webkit-transition: all 0.4s ease; -moz-transition: all 0.4s ease; -ms-transition: all 0.4s ease; -o-transition: all 0.4s ease; transition: all 0.4s ease; }
.main-header .logo a img { width: auto; height: 100%; transition: var(--transition-common);}






/* SUBMENU STYLING */
header span.submenu-arrow { margin-left: 10px; content: ""; position: absolute; top: 25px; box-sizing: border-box; height: 50px; width: 50px; transform: rotate(0deg); transition: border-width 150ms ease-in-out; -webkit-transition: all .4s ease; -moz-transition: all .4s ease; -ms-transition: all .4s ease; -o-transition: all .4s ease; transition: all .4s ease; left: unset; right: 10px; margin: 0 auto; z-index: 9999; display: flex; justify-content: center; align-items: center;  cursor: pointer;}
header span.submenu-arrow::before { content: ""; position: absolute; top: 50%; right: calc(50% - 6px); box-sizing: border-box; height: 15px; width: 15px; border-style: solid; border-color: #7E7E7E; border-width: 0 3px 3px 0; transform: translateY(-50%) rotate(-45deg); transition: border-width 150ms ease-in-out; -webkit-transition: all .4s ease; -moz-transition: all .4s ease; -ms-transition: all .4s ease; -o-transition: all .4s ease; transition: all .4s ease; margin: 0 auto; }
header .main-menu ul > li.current-menu-item.active span.submenu-arrow.arrow-open:before { transform: translateY(-50%) rotate(-135deg); }
.main-menu ul > li.menu-item-has-children.active:after { transform: rotate(45deg); -webkit-transform: rotate(45deg); }
.main-menu ul > li > ul.sub-menu { opacity: 0; visibility: hidden; list-style: none; margin: 0; padding: 0; background: var(--color-tertiary); max-height: 0; transition: max-height .6s ease-out; overflow: hidden; }
.main-menu ul > li > ul.sub-menu.open {  transform: scaleY(1); max-height: 300px; }
header .main-menu ul .sub-menu li { display: block; position: relative; padding:0; margin: 0; cursor: pointer; opacity: 0; -webkit-transform: translateY(-150px); transform: translateY(-150px); -webkit-transition: -webkit-transform 0.4s, opacity 0.4s; transition: transform 0.4s, opacity 0.4s;}
.main-menu ul > li > ul.sub-menu.submenu-open li { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }

header .main-menu ul.sub-menu li a { display: block; padding: 15px 25px 15px 50px; color: var(--color-primary); border-top: 1px solid #dedede;}
header .main-menu ul.sub-menu li a:before { content: ""; position: absolute; left: 30px; top: 23px; width: 12px; height: 12px; background: var(--color-primary); border-radius: 50%; }
header .main-menu ul.sub-menu li a:after { content: ""; position: absolute; left: 32px; top: 25px; width: 8px; height: 8px; background: var(--color-accent); border-radius: 50%; }















  
/* ====== END HEADER CSS ====== */



/* HOME PAGE START HERE */

.section-title { margin-bottom: 50px; }
.l-subtitle p { font-size: var(--f-size-L); }
.l-subtitle p strong {font-family: var(--ff-title); }

.hero-section { min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; justify-content: space-between; padding-block-start: 160px; padding-block-end: 50px; position: relative; overflow: hidden; transition: min-height 0.3s ease; }
.home-banner-img { position: absolute; inset: 0; height: 100%; width: 100%; }
.home-banner-img img { width: 100%; height: 100%; object-fit: cover;}
.home-banner-img:after, .home-banner-video:after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0, 0, 0, 0.03) 0%, #001835 100%); width: 100%; height: 100%; }
.home-banner-img:before, .home-banner-video:before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(34, 34, 34, 0.9) 0%, rgba(34, 34, 34, 0.531) 44.18%, rgba(34, 34, 34, 0.9) 100%); width: 100%; height: 100%; }
.home-banner-video { height: 100dvh; position: absolute; inset: 0; width: 100%; }
.home-banner-video video { width: 100%; height: 100%; object-fit: cover; }
.hero-section .banner-middle-row { flex: 1; display: flex; align-items: center; }
.hero-section .banner-heading { max-width: 860px; width: 100%; text-align: left; }
.hero-section .banner-heading h1 { color: var(--bs-white); font-family: var(--ff-base); font-weight: var(--fw-regular);}
.hero-section .banner-bottom-row { padding-inline: 50px; }
.hero-section .banner-bottom-row .row { display: flex; align-items: center; justify-content: space-between; margin: 0; width: 100%; }
.hero-section .banner-icon { flex: 0 0 auto; width: 20%; display: flex; align-items: center; justify-content: flex-start; }
.hero-section .banner-icon img { max-height: 30px; width: auto; opacity: 0.65; }
.hero-section .banner-center-content { flex: 1; text-align: center; padding-inline: 20px; }
.hero-section .banner-center-content p { color: var(--bs-white); font-size: var(--f-size-L); margin: 0; }
.hero-section .banner-play-btn { flex: 0 0 auto; width: 20%; display: flex; align-items: center; justify-content: flex-end; }
.hero-section .banner-play-btn .video-play { position: relative; width: 100px; height: 100px; border-radius: 50%; background: rgba(255, 255, 255, 0.08); border: 0; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1); padding: 0; outline: none;  }
.banner-play-btn .video-play.play-wrapper { position: relative; width: 160px; height: 160px; display: flex; align-items: center; justify-content: center; cursor: pointer; }
.banner-play-btn .video-play .ring { position: absolute;left: 50%; top: 50%; border-radius: 50%; background: rgba(255, 255, 255, 0.08); animation: pulse 2.2s ease-out infinite; }
.banner-play-btn .video-play .ring:nth-child(1) { width: 160px; height: 160px; animation-delay: 0s; }
.banner-play-btn .video-play .ring:nth-child(2) { width: 160px; height: 160px; animation-delay: 0.7s; }
.banner-play-btn .video-play .ring:nth-child(3) { width: 160px; height: 160px; animation-delay: 1.4s; }
.banner-play-btn .video-play .core { position: relative; width: 74px; height: 74px; border-radius: 50%; background: rgba(255, 255, 255, 0.16); display: flex; align-items: center; justify-content: center; box-shadow: 0 0 25px rgba(255, 255, 255, 0.15); transition: transform 0.2s ease, background 0.2s ease; z-index: 2; }
.banner-play-btn .video-play .play-wrapper:hover .core { background: rgba(255, 255, 255, 0.28); transform: scale(1.06); }
.banner-play-btn .video-play .play-wrapper:active .core { transform: scale(0.96); }
.banner-play-btn .video-play .triangle { width: 0; height: 0; border-top: 13px solid transparent; border-bottom: 13px solid transparent; border-left: 20px solid #ffffff; margin-left: 6px; position: absolute; }
.hero-section .banner-play-btn button.video-play.playing .triangle { opacity: 0; }
.hero-section .banner-play-btn button.video-play.playing .pause { width: 16px; height: 22px; display: flex; gap: 5px; justify-content: space-between; }
.hero-section .banner-play-btn button.video-play.playing .pause span { display: block; width: 4px; height: 100%; background: var(--bs-white); }

  @keyframes pulse {
    0% {
      transform: translate(-50%, -50%) scale(0.55);
      opacity: 0.5;
    }
    70% {
      opacity: 0;
    }
    100% {
      transform: translate(-50%, -50%) scale(1.3);
      opacity: 0;
    }
  }

/* Video Modal Premium Theme */
#videoModal .modal-content { background: rgba(26, 26, 26, 0.95); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 20px; overflow: hidden; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5); }
#videoModal .modal-header { border-bottom: none; padding: 15px 20px; position: absolute; right: 0; top: 0; z-index: 10; }
#videoModal .btn-close { background-color: rgba(255, 255, 255, 0.1); background-image: none; border-radius: 50%; width: 36px; height: 36px; opacity: 0.8; display: flex; align-items: center; justify-content: center; color: #ffffff; font-size: 32px; line-height: 1; border: none; transition: all 0.3s ease; cursor: pointer; }
#videoModal .btn-close:before { content: "×"; }
#videoModal .btn-close:hover { opacity: 1; background-color: var(--color-accent); color: #1A1A1A; transform: rotate(90deg); }
#videoModal .modal-body { padding: 0; }
#videoModal video { width: 100%; height: 100%; display: block; }
#modalVideo iframe { width: 100%; height: 100%; }

.half-block-box { margin-bottom: 24px;}
.half-block-sec .image-wrapper { padding-bottom: 59.5%; position: relative; overflow: hidden; border-radius: 30px; } 
.half-block-sec .image-wrapper img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.half-block-box .image-wrapper:after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000000 100%); border-radius: 30px;}
.half-block-box .content-area { position: absolute; left: 0; right: 0; bottom: 0; padding: 35px; z-index: 2; }
.half-block-box .content-area h3 { color: var(--bs-white); margin-block-end: 0;}
.half-block-box .content-area .link-btn { width: 60px; height: 35px; background-color: var(--color-accent); display: flex; align-items: center; justify-content: center; border-radius: 20px; }


.why-choose-section h4 { margin-bottom: 0; }
.why-choose-section p { color: #7E7E7E;}
.why-choose-section h4 {color: var(--color-secondary); margin-bottom: 0;}
.why-choose-section .section-title .l-subtitle span { margin-left: 20px; }

.row.card-row { border-top: 1.2px dashed rgba(34, 34, 34, 0.6);margin-inline: -24px; }
.row.card-row>* { padding-inline: 24px; }
.card-col::after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; width: 1px; border-right: 1.2px dashed rgba(34, 34, 34, 0.6); }
.card-col::before { content: ""; position: absolute; top: -6px; right: -6px; width: 12px; height: 12px; background-color: var(--color-primary); transform: rotate(45deg); z-index: 5; }
.card-col:last-child:before, .card-col:last-child:after, .why-choose-section .card-col:nth-child(3n):before, .why-choose-section .card-col:nth-child(3n):after{ display: none;}
.why-choose-card, .counter-box {padding-top: 50px;}
.why-choose-card .image-wrapper { border-radius: 30px;padding-bottom: 63%; position: relative; overflow: hidden; margin-bottom: 24px; }
.why-choose-card .image-wrapper img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.why-choose-card .image-wrapper .fpo-watermark { position: absolute; bottom: 20px; left: 25px; }
.why-choose-card .image-wrapper .fpo-watermark img { position: relative;}

.green-energy-sec:after{ content: ""; position: absolute; inset: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.5);}


/* Global Partnerships Section */
.partners-logo-container { padding-inline:88px;}
.partners-logo-slider { padding-block: 120px 25px !important; }
.partners-logo-slider:not(.swiper-initialized) .swiper-wrapper { display: flex; justify-content: center; align-items: center; flex-wrap: nowrap;; transform: none !important; }
.partners-logo-slider:not(.swiper-initialized) .swiper-slide { width: auto !important; }
.partners-logo-slider .swiper-slide:nth-child(odd) .partner-card { transform: translateY(-77px); position: relative; z-index: 1; }
.partners-logo-slider .partner-card:hover { transform: translateY(-5px); background-color: #FFFFFF; border-color: rgba(0, 0, 0, 0.1);  z-index: 10; }
.partners-logo-slider .swiper-slide:nth-child(odd) .partner-card:hover { transform: translateY(-80px); }
.partners-logo-slider.swiper-initialized .swiper-wrapper { display: flex; }
.partners-logo-slider.swiper-initialized .swiper-slide { width: auto; display: flex; justify-content: center; align-items: center; }

.partner-card { border: 1px solid #AAAAAA; border-radius: 10px; width: 100%; height: 11.1vw; display: flex; align-items: center; justify-content: center; padding: 20px; transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1); flex-shrink: 0; cursor: pointer; }



.gallery-grid { display: grid; grid-template-columns: repeat(12, 1fr); grid-auto-rows: 320px; gap: 16px; }
.gallery-grid a.item {grid-column: span 4;  position: relative; overflow: hidden; border-radius: 20px; }
.gallery-grid a.item > img { position: absolute; inset: 0;  width: 100%; height: 100%; object-fit: cover;  transition: transform 0.4s ease; }
.gallery-grid a.item:hover > img { transform: scale(1.05); }
.gallery-grid a.item .fpo-watermark { position: absolute; left: 20px;bottom: 20px; }
.gallery-grid a.item .fpo-watermark img { position: relative; width: auto; height: auto; object-fit: contain; }
.gallery-grid .item:nth-child(1) { grid-column: span 4; }
.gallery-grid .item:nth-child(2) { grid-column: span 3; }
.gallery-grid .item:nth-child(3) { grid-column: span 5; }



/* HOME PAGE END HERE ==========================*/




/* Footer css */

.main-footer { background-image: url(../images/ftr-bg.png); background-position: center center; background-repeat: no-repeat; background-size: cover; position: relative; background-color: var(--bs-black); }
.main-footer::after { content: ""; position: absolute; inset: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.2);}
.main-footer > .container { position: relative; z-index: 2; }
.top-footer { padding-block: var(--padding-height) 50px;}
.top-footer h3 { font-size: clamp(1.375rem, 0.7929rem + 1.2142vw, 2.25rem); color: var(--bs-white);}
.top-footer .ftr-info ul { max-width: 572px; }
.top-footer .ftr-info ul li { margin-bottom: 27px; color: #A8A8A8; font-size: var(--f-size-L); padding-left: 40px; position: relative; }
.top-footer .ftr-info ul li a { color: #A8A8A8; }
.top-footer .ftr-info ul li span { display: flex; align-items: start; gap: 11px; }
.top-footer .ftr-info ul li svg { position: absolute; left: 0; top: 7px; color: #FFBD09; }
.top-footer .ftr-menu ul li { margin-bottom: 20px;}
.top-footer .ftr-menu ul li a { color: var(--bs-white); font-size: var(--f-size-L);} 
.top-footer .ftr-menu ul li a:hover {color: var(--color-accent);}
.top-footer .ftr-logos { margin-block-start: 70px; text-align: right; }
.top-footer .ftr-logos img { margin-block-end: 16px; }
.top-footer .social { margin-block-start: 80px;}
.top-footer .social span { color: var(--bs-white);}
.top-footer .social a { width: 34px; height: 34px; border: 1px solid var(--bs-white); display: flex; align-items: center; justify-content: center;}
.top-footer .social a:hover { background-color: var(--color-accent); color: var(--color-primary);}
.top-footer .social a:hover img { filter: brightness(0); }

.main-footer .bottom-footer {border-top: 1px solid rgba(255, 255, 255, 0.5); padding-block: 30px;}
.bottom-footer p { color: #A8A8A8; }
.btm-ftr-menu ul { display: flex; flex-wrap: wrap; justify-content: center; }
.btm-ftr-menu ul li { position: relative; color: var(--bs-white); }
.btm-ftr-menu ul li:not(:last-child):after { content: "|"; margin: 0 10px; }
.btm-ftr-menu ul li a { color: var(--bs-white); }
.btm-ftr-menu ul li a:hover { color: var(--color-accent);}


/*INNER BANNER SECTION CSS*/
.inner-banner { max-height: 700px; min-height: 700px; display: flex; flex-direction: column; justify-content: end; padding-block-end: var(--padding-height); }
.inner-banner h1 { color: var(--bs-white); font-family: var(--ff-base);}
.inner-banner p { color: var(--bs-white); font-size: var(--f-size-L);}

/*OUR PRODUCT PAGE CSS*/

.intro-panel { background-color: #0F0F0F; color: #ffffff; padding: 5rem 4rem 5rem 0; display: flex; align-items: center; height: 100%; position: relative; }
.intro-panel:before { content: ""; position: absolute; left: -30vw; top: 0; width: 31vw; height: 100%; background-color: #0F0F0F; z-index: -1; }
.intro-panel h2 { color: var(--bs-white); }
.intro-panel p { color: var(--bs-white); }
/* Stat grid */
.stat-grid { min-height: 540px; }
.stat-box { padding: 60px 40px; display: flex; flex-direction: column; position: relative; height: 100%; }
.stat-box>* { position: relative; z-index: 1;}
.stat-box h3 { max-width: 350px; margin-bottom: 20px; }
.stat-col:first-child .stat-box:after, .stat-col:last-child .stat-box:after { content: ""; position: absolute; inset: 0; background: #0F0F0F66; }
.stat-box .stat-number { margin-bottom: var(--padding-height); }
.stat-box .stat-title { font-weight: 700; font-size: 1.1rem; margin-bottom: 0.5rem; }
.stat-box .stat-desc { font-size: 0.85rem; line-height: 1.5; margin-bottom: 0; }

/* Light variant */
.stat-box.stat-light { background-color: #eeeeee; color: #14161a; }
.stat-box.stat-light .stat-desc { color: #6c7178; }

/* Image variant (solar panels) */
.solar-intro-right { width: calc(50vw - 0px); }
.stat-box.stat-image { color: var(--bs-white); background-size: cover; background-position: center; background-repeat: no-repeat; }



/* Tab nav styled as pill buttons */
.process-tabs { border-bottom: 0; flex-wrap: nowrap; justify-content: center; gap: 0.75rem; overflow-x: auto; overflow-y: hidden; width: 100%; padding-bottom: 15px; margin-bottom: 24px !important; -webkit-overflow-scrolling: touch; max-width: 1000px; margin-inline: auto;} 
.process-tabs:has(li:nth-child(7)) { justify-content: start; }
.process-tabs .nav-link { background-color: #f0f0f0; color: #14161a; font-weight: 500; border: none; border-radius: 0; padding: 0.85rem 1.75rem; }
.process-tabs .nav-link:hover { background-color: #e4e4e4; color: #14161a; }
.process-tabs .nav-link.active { background-color: #14161a; color: #ffffff; }
.process-tabs .nav-item { flex: 0 0 calc((100% - 50px) / 7); }
.process-tabs .nav-link { width: 100%; min-height: 54px; padding: 15px 20px; white-space: nowrap; }
.process-tabs::-webkit-scrollbar-thumb {cursor: grab; }
.process-tabs::-webkit-scrollbar-thumb:active { cursor: grabbing; }

/* Tab panel image + overlay */
.process-panel { position: relative; overflow: hidden; background-size: cover; background-position: center center; background-repeat: no-repeat; }
.process-panel-img { padding-bottom: 43%; position: relative; overflow: hidden; }
.process-panel-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.process-panel::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(26, 26, 26, 0) 0%, #1A1A1A 100%); }
.process-panel .panel-caption { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 1.75rem 2.25rem 1.5rem; color: #ffffff; }
.panel-caption ul { list-style: none; padding-left: 0; margin-bottom: 0.4rem; display: flex; flex-wrap: wrap; gap: 0 2.5rem; }
.panel-caption ul.stack { display: block; }
.panel-caption li { position: relative; padding-left: 2rem; font-size: var(--f-size-L); margin-bottom: 0.3rem; }
.panel-caption li::before { content: "\25C6"; position: absolute; left: 0; top: 0; }
.panel-caption p { font-size: var(--f-size-L); }

.certifications-content { height: 100%; display: flex; flex-direction: column; justify-content: end; padding-right: 30px; padding-bottom: 70px; }
.certifications-content p { font-size: var(--f-size-L); }
.certifications-slider-wrap { position: relative; overflow: hidden;width: calc(62vw - 0px); }
.certifications-slider { overflow: visible; }
.certificate-card { height: 25em; padding: 34px 24px; border: 1px solid rgba(0, 0, 0, 0.2); background: rgba(255, 255, 255, 0.38); display: flex; align-items: center; justify-content: center; }
.certificate-card img { width: 100%; height: 100%; object-fit: contain; display: block; }


/* =========================================
   Slider Button Controls
========================================= */
.certs-controls { display: flex; align-items: center; gap:40px; margin-top: 52px; }
.swiper-button-wrap { display: flex; gap: 11px; flex-shrink: 0; }
.swiper-button-wrap button { width: 47px; height: 47px; padding: 0; border: 0; background: #1b1b1b; color: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: 0.3s ease; }
.swiper-button-wrap button:hover { background: #555; }
.swiper-button-wrap i { font-size: 12px; }
.certs-progress-track { position: relative; flex: 1; height: 1.6px; background-color: #ADADAD; }
.certs-progress-track .certs-progress-bar { position: absolute; top: 0; left: 0; height: 1.6px; background-color: var(--bs-black); transform-origin: left; }


/* WORK WITH US PAGE CSS */
.fabric-section .image-wrapper { padding-bottom: 76%; }
.fabric-section .content-area { position: relative; padding: 30px 0 0; }
.fabric-section .content-area h3 { color: var(--color-primary); margin-bottom: 16px;}


/* EVENTS PAGE CSS */

.event-card { background: var(--color-primary); border-radius: 30px; color: var(--bs-white); margin-top: 50px;}
.event-content { display: flex; flex-direction: column; justify-content: center; }
.event-category { background: var(--bs-white); padding: 12px 24px; font-size: var(--f-size-Body); color: var(--color-primary); font-family: var(--ff-title); width: max-content; margin-bottom: 30px; }
.event-content .event-info p { margin-bottom: 5px; }
.event-content .event-description p { font-size: var(--f-size-M); }
.link-btn-wrap { border-top: 1px solid rgba(255, 255, 255, 0.25); }
.link-btn-wrap .link-btn { display: inline-flex; align-items: center; gap: 10px; color: var(--bs-white); text-decoration: none; font-weight: 500; transition: all 0.3s ease; }
.link-btn-wrap .link-btn span { font-size: var(--f-size-L); line-height: 1; transition: transform 0.3s ease; }
.link-btn-wrap .link-btn:hover { color: #fff; }
.link-btn-wrap .link-btn:hover span { transform: translate(4px, -4px); }
.event-card .event-image .event-img { height: 100%; }
.event-image img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 0 30px 30px 0;}
.event-card.flex-row-reverse .event-image img { border-radius: 30px 0 0 30px;}
.event-date { position: absolute; top: 28px; left: 28px; background: var(--color-primary); color: var(--bs-white); border: 6px solid var(--bs-white); border-radius: 20px; padding: 10px 18px; min-width: 185px; text-align: center; font-size: var(--f-size-Body);  display: flex; flex-direction: column; }
.date-separator { line-height: 1; }
.event-card.flex-row-reverse .event-date { right: 28px; left: auto; }



/* ========================================
   Modal Overlay
======================================== */

.request-meeting-modal {
    background: rgba(0, 0, 0, 0.5);
}


/* ========================================
   Modal Box
======================================== */

.request-meeting-modal .modal-dialog { max-width: 800px; margin: 1.75rem auto; }
.request-meeting-modal .modal-content { position: relative; background: #F0F0F0; border: 0; border-radius: 20px; overflow: hidden; }
.request-meeting-modal .modal-body { padding: 25px 25px 24px; }
.request-meeting-modal h2 { margin: 0 0 25px; text-align: center; font-size: clamp(1.5rem, 1.1479rem + 1.1268vw, 2.5rem); }
.request-meeting-modal .modal-close-btn { position: absolute; top: 14px; right: 14px; z-index: 5; width: 56px; height: 56px; display: flex; align-items: center; justify-content: center; padding: 0; border: 0; background: var(--color-primary); cursor: pointer; }


/* EVENT DETAILS PAGE */
.single-p-header .main-header { background-color: var(--bs-black); padding-block: 30px; }
.single-p-header .event-feature-img { padding-block: 150px 0; }
.event-feature-img .event-img { padding-bottom: 43.5%; position: relative; overflow: hidden; border-radius: 30px; margin-bottom: 47px; }
.event-feature-img .event-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.event-organizer { border: 1px solid rgba(26, 26, 26, 0.5); border-radius: 20px; margin-top: 35px; padding: 30px; }
.event-organizer .event-organiser-top { border-bottom: 1px solid #C0C0C0; padding-bottom: 50px; margin-bottom: 50px; }
.event-organizer .img-wrapper { border: 1px solid rgba(26, 26, 26, 0.1); box-shadow: 6px 10px 20px 0px rgba(0, 0, 0, 0.1); height: 100%; border-radius: 10px; display: flex; align-items: center; justify-content: center; padding: 20px; margin-right: 15px;}

.event-tabs { border-bottom: 1px solid rgba(55, 55, 55, 0.5); gap: 0; }
.event-tabs .nav-item { margin-bottom: 0; }
.event-tabs .nav-link { position: relative; border: 0; border-radius: 0; background: transparent; color: #373737; font-size: var(--f-size-L); line-height: 1.3; font-weight: 400; padding: 20px 0; margin-right: 50px; }
.event-tabs .nav-item:last-child .nav-link { margin-right: 0px; }
.event-tabs .nav-link.active { color: #373737; font-family: var(--ff-title); }
.event-tabs .nav-link.active::after { content: ""; position: absolute; left: 0; bottom: -1px; width: 100%; height: 2px; background: #333; }
.event-tabs .nav-link:focus { outline: none; box-shadow: none; }
html[lang="de-CH"] .event-tabs .nav-link { font-size: var(--f-size-M); } /* for Deutsch Lang */
.event-highlight-card { background: #191919; border-radius: 10px; overflow: hidden;}
.event-highlight-image { width: 100%; height: 100%; }
.event-highlight-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.event-highlight-content { height: 100%; display: flex; flex-direction: column; justify-content: center; padding: 30px; color: #fff; }
.event-highlight-content h3 { color: var(--bs-white); margin-bottom: 25px; }

.event-sidebar { position: sticky; top: 30px; z-index: 10; }
.event-join-box { padding:40px; margin-bottom: 20px; background: var(--color-primary); border-radius: 20px; }
.event-join-box h3 { margin: 0 0 16px; font-family: var(--ff-base); color: var(--bs-white); }
.event-join-box p { margin: 0 0 23px; font-size: var(--f-size-M); color: var(--bs-white); }
.event-details-box { padding: 30px; background: #F0F0F0; border: 1px solid rgba(15, 15, 15, 0.24); border-radius: 20px; }
.event-detail-list h3 { color: #373737;  font-family: var(--ff-base);}
.event-detail-list { display: flex; flex-direction: column; gap: 5px; }
.event-detail-item { padding:18px 30px;border: 1px solid rgba(87, 87, 87, 0.19); background-color: var(--bs-white);}
.event-detail-item h4 { margin-bottom: 8px;}
.event-detail-item p { margin: 0; color: #7E7E7E; font-size: var(--f-size-L); line-height: 1.2; }
.event-share { padding-top: 40px; }
.event-social-list { display: flex; align-items: center; gap: 5px; }
.event-social-list a { width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; border: 1px solid #373737; color: #373737; transition:var(--transition-common); }
.event-social-list a:hover { background: #373737; border-color: #373737; color: var(--bs-white); }


/* NEWS PAGES CSS */

.news-card { border: 1px solid #CACACA;background-color: var(--bs-white); height: 100%; border-radius: 20px; transition: var(--transition-common); overflow: hidden; }
.news-card .news-img { margin: 50px 20px; text-align: center; position: relative; height: 270px; overflow: hidden; display: flex; flex-direction: column; justify-content: center; align-items: center;  }
.news-card .news-img img { width: auto; height: 100%; object-fit: contain; }
.news-card .news-content { height: calc(100% - 370px); background: #F3F3F3; padding: 30px 40px; border-radius: 20px;transition: var(--transition-common);  }
.news-card .news-content h3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; margin-bottom: 8px;}
.news-card .news-content p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; margin-bottom: 8px;}
a.link-btn { display: inline-flex; align-items: center; gap: 10px; text-transform: uppercase; color: var(--color-primary); text-decoration: none; font-weight: 500; transition: all 0.3s ease; }
a.link-btn span { font-size: var(--f-size-L); line-height: 1; transition: transform 0.3s ease; }
a.link-btn:hover span { transform: translate(4px, -4px); }
.news-card:hover .news-content { background-color: var(--color-primary);}
.news-card:hover .news-content h3, .news-card:hover .news-content p { color: var(--bs-white);}
.news-card:hover .news-content a.link-btn { color: var(--bs-white);}
.news-section .button-holder { margin-top: 70px;}



/* GALLERY PAGE CSS */
.gallery-grid.gallery-grid-v2 { grid-auto-rows: 450px; }
.gallery-grid-v2 .item:nth-child(1) { grid-column: span 8; }
.gallery-grid-v2 .item:nth-child(2) { grid-column: span 4; }
.gallery-grid-v2 .item:nth-child(3) { grid-column: span 4; }
.gallery-grid-v2 .item:nth-child(7) { grid-column: span 8; }
.gallery-grid a.item:nth-child(8) { grid-column: span 8; }
.gallery-grid a.item:nth-child(9) { grid-column: span 4; }
.gallery-grid a.item:nth-child(13), .gallery-grid a.item:nth-child(14) { grid-column: span 6; }
.gallery-grid a.item:nth-child(16) { grid-column: span 8; }


/* CONTACT PAGE CSS */
.contact-info { padding-inline: 20px;}
.contact-info .icon-box img { height: 45px; }
.contact-info h4 { font-family: var(--ff-base); margin-bottom: 12px; }
.contact-info h4 strong { font-family: var(--ff-title);}
.contact-info h4 a { color: var(--color-primary);}
.map-area { padding: 25px; border: 1px solid #1A1A1A; border-radius: 30px; }
.map-area .map-inner-area { padding-bottom: 64%; position: relative; overflow: hidden; border-radius: 16px; }
.map-area .map-inner-area iframe { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }



/* GREEN ENERGY PAGE CSS */
.green-energy-section .image-wrapper { padding-bottom: 73%; }
.green-energy-section .content-wrapper ul { margin-bottom: 50px; }
.green-energy-section .content-wrapper ul li { font-size: var(--f-size-L); position: relative; padding-left: 2rem; margin-bottom: 16px; }
.green-energy-section .content-wrapper ul li::before { content: "\25C6"; position: absolute; left: 0; top: 0; }
.green-energy-section .content-wrapper ul li strong { font-family: var(--ff-title);}
.green-energy-text-block { padding-bottom: var(--padding-height);}
.green-energy-text-block .row { padding-top: var(--padding-height); border-radius: 30px 0 0 30px; }
.green-energy-text-block .row:after { content: ""; position: absolute; right: -30vw; top: 0; width: 30vw; height: 100%; background-color: var(--bs-black); }
.green-energy-text-block .image-wrapper { width: calc(50vw - 0px); margin-left: calc(100% - 50vw); margin-bottom: -100px; padding-bottom: 107%; position: relative; overflow: hidden; border-radius: 30px; }
.green-energy-text-block .image-wrapper img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.green-energy-text-block .content-wrapper { padding-left: 35px; }
.green-energy-text-block .content-wrapper h2, .green-energy-text-block .content-wrapper h3  { color: var(--bs-white);}
.green-energy-text-block .content-wrapper p { color: var(--bs-white); font-size: var(--f-size-L); }
.green-energy-text-block .content-wrapper ul { margin-bottom: 50px; }
.green-energy-text-block .content-wrapper ul li { font-size: var(--f-size-L); position: relative; padding-left: 2rem; margin-bottom: 16px; color: var(--bs-white); }
.green-energy-text-block .content-wrapper ul li::before { content: "\25C6"; position: absolute; left: 0; top: 0; }
.green-energy-text-block .content-wrapper ul li strong { font-family: var(--ff-title);}
.table-card { padding: 30px; margin: 0 auto; background: var(--bs-white); border-radius: 20px; overflow: hidden; }
.project-table { margin-bottom: 0; overflow: hidden; }
.project-table thead tr { border-left: 1px solid #0F0F0F; border-right: 1px solid #0F0F0F; }
.project-table thead th { background-color: #0F0F0F; color: var(--bs-white); font-weight: 700; font-size: var(--f-size-XL); text-align: center; border: none; padding: 38px 20px; vertical-align: middle; }
.project-table tbody tr { border-left: 1px solid rgba(15, 15, 15, 0.5); border-right: 1px solid rgba(15, 15, 15, 0.5); }
.project-table tbody tr:last-child { border-bottom: 1px solid rgba(15, 15, 15, 0.5); }
.project-table tbody td { padding: 35px 20px; vertical-align: middle; border: none; color: #373737; font-size: var(--f-size-L);  text-align: center; }
.project-table tbody td:not(:first-child) { text-align: center; }
.project-table tbody tr:nth-child(even) { background-color: #f2f2f2; }
.project-table tbody tr:nth-child(odd) { background-color: #ffffff; }
.status-cell { font-weight: 700; }
.status-processing { font-family: var(--ff-title); }
.status-planning { color: #1a1a1a; }


/* 404 PAGE CSS */
.common-page-wrapper { padding: 96px 0 0; min-height: calc(100dvh - 96px - 300px); display: flex; flex-direction: column; align-items: center; justify-content: center; }









/* MEDIA QUERY CSS*/






@media only screen and ( max-width:1601px ) { 
/* HEADER CSS */
.main-menu > ul > li > a { padding: 22px 25px; }
.main-menu > ul > li > a:after { right: 25px;}


/* INNER BANNER CSS */
.inner-banner {max-height: 600px; min-height: 600px; }

/* PRODUCT PAGE CSS */
.certificate-card { height: 18em; padding: 20px; }


/* EVENT DETAILS PAGE */
html[lang="de-CH"] .event-tabs .nav-link { margin-right: 30px; } /* for Deutsch Lang */
html[lang="de-CH"] .event-organizer { padding: 30px 20px; }





}

 
@media only screen and ( max-width:1441px ) { 

/* HEADER CSS */
.main-header { padding-block: 40px; }
.main-header.fixed { padding-block: 20px; }
.hero-section .banner-bottom-row { padding-inline: 30px; }
    

/* HOME PAGE CSS */
.hero-section { padding-block-start: 120px; padding-block-end: 30px; }
.hero-section .banner-icon , .hero-section .banner-play-btn { width: 15%; }
.partners-logo-slider { padding-block: 100px 15px !important;}
.partners-logo-container { padding-inline: 60px; }
.partners-logo-slider .swiper-slide:nth-child(odd) .partner-card { transform: translateY(-50px); }
.partners-logo-slider .swiper-slide:nth-child(odd) .partner-card:hover { transform: translateY(-60px); }
.row.card-row { margin-inline: -20px; }
.row.card-row>* { padding-inline: 20px; }


/* FOOTER CSS */

.footer-menu { padding: 20px 10px; }
.footer-menu li { padding-inline: 20px;}
.footer-menu li a { padding-block: 0; }
.top-footer .ftr-info ul li { max-width: 400px;}
.footer-logo a { top: 35%; max-width: 160px; }
.main-footer img.ftr-logo-bg { margin-top: -19px; max-width: 250px; }
.contact-info:not(:last-child) { margin-bottom: 16px; padding-bottom: 15px; }
.contact-form { max-width: 540px; padding: 30px; }
.contact-form-wrapper { padding-block-end: 50px; }
.main-footer .bottom-footer .copy-right p { font-size: 15px; } 


/* INNER BANNER CSS */ 

/* PRODUCT PAGE CSS */


/* ABOUT PAGE CSS*/
.faculty-middle-col .content-wrapper { margin-block-start: 40px; padding-block-start: 40px; }


/* EVENT DETAILS PAGE */
html[lang="de-CH"] .event-tabs .nav-link { margin-right: 12px; font-size: var(--f-size-S); } /* for Deutsch Lang */


}
@media only screen and ( max-width:1367px ) { 


/* HOME PAGE CSS */
.hero-section { padding-block-start: 127px; }
.hero-section .banner-bottom-row { padding-inline: 20px; }
.hero-banner__images .bnr-inner-shape { top: -2px; height: 80px; }
.hero-section .banner-play-btn .video-play { width: 78px; height: 78px; }
.banner-play-btn .video-play .core { width: 54px; height: 54px; }
.video-circle-btn { width: 170px; height: 170px; }
.mission-section .mission-content { padding: 50px 30px; }
.mission-img-wrapper span.mission-img-one { max-width: 450px; }
.mission-img-wrapper span.mission-img-two { max-width: 300px; border-width: 9px;}
.videoSwiper .swiper-slide.swiper-slide-active { transform: translateY(-70px); }
.videoSwiper .swiper-slide.swiper-slide-next, .videoSwiper .swiper-slide.swiper-slide-prev { transform: translateY(-30px); } 
.video-gallery .button-wrapper { margin-block-start: 0; }
.section-title { margin-bottom: 30px; }
.glance-inner-wrapper .circle { width: 180px;height: 180px;}
.top-left-curve-shape { top: 20px; }
.infinite-scroll-wrap .item { font-size: 18px;}
.infinite-scroll-wrap .item img {  width: 45px; }
.contact-info-wrapper { padding-left: 25px; }




/* PRODUCT PAGE CSS */
.stat-box { padding: 40px 20px; }
.stat-box .stat-number { margin-bottom: 60px; }


/* NEWS PAGE CSS */
.news-card .news-img { margin: 40px 20px; }
.news-card .news-content { padding: 30px; }

/* EVENT PAGE CSS */
.event-feature-img .event-img { margin-bottom: 0; }
.event-join-box { padding: 30px; }
.event-details-box { padding: 25px; }
.event-detail-item { padding: 18px 20px; }
.event-detail-item p { font-size: var(--f-size-M); }



}

@media only screen and ( max-width:1281px ) { 

  .common-page-wrapper { min-height: calc(100dvh - 96px - 437px);}
  
/* HEADER CSS */


/* HOME PAGE CSS */



}

@media only screen and ( max-width: 1199px ) {
  :is(a.btn, .btn) .btn-text { padding: 14px 20px; border-radius: 8px;}
  :is(a.btn, .btn) .btn-icon { width: 48px; height: 48px; }
  :is(a.btn, .btn) :is(.top-arw, .btm-arw) { height: 9px; }
  p { line-height: 1.3;}

/* HEADER CSS */
  .main-header { padding-block: 30px; }
  .main-menu > ul > li > a:after { padding: 6px;}



/* HOME PAGE CSS */
.hero-section .banner-bottom-row { padding-inline: 0; }
.half-block-box .content-area {padding: 25px; }
.half-block-box .content-area .link-btn { width: 45px; height: 26px; }
.half-block-box .content-area .link-btn svg { width: 20px; }
.why-choose-card { padding-top: 30px; }
.why-choose-card h3 { min-height: 60px; }
.partner-card { height: 11vw; padding: 10px; }
.partners-logo-slider { padding-block: 80px 15px !important; }
.partners-logo-slider .swiper-slide:nth-child(odd) .partner-card { transform: translateY(-40px); } 
.partners-logo-slider .swiper-slide:nth-child(odd) .partner-card:hover { transform: translateY(-50px); } 
.gallery-grid { grid-auto-rows: 245px; }
  


/* FOOTER CSS */
.top-footer .ftr-info ul li { max-width: 360px; }
.top-footer .ftr-menu ul li { margin-bottom: 15px; }
.top-footer .ftr-logos { margin-block-start: 50px; }
  
/* INNER BANNER CSS */  
.inner-banner { min-height: 550px; max-height: 550px; }


/* PRODUCT PAGE CSS */
.stat-box { padding: 25px 15px; }
.stat-box .stat-number { margin-bottom: 40px; }
.stat-box h3 { font-size: var(--f-size-L); margin-bottom: 10px; }
.process-panel-img { padding-bottom: 55%; }
.process-tabs .nav-item { flex: 0 0 calc((100% - 50px) / 5); }
.process-tabs:has(li:nth-child(5)) { justify-content: start; }


/* NEWS PAGE CSS */
.news-card .news-img { height: 220px; margin: 30px 20px; }
.news-card .news-content { height: calc(100% - 280px); padding: 20px; }
.news-card .news-content h3 { font-size: var(--f-size-L);}
.news-section .button-holder { margin-top: 50px; }

/* EVENT DETAILS PAGE CSS */
.event-organizer { padding: 30px 20px; }
.event-organizer h2 { font-size: var(--f-size-XL); }
.event-organizer .img-wrapper { height: auto; padding: 30px 15px; margin-right: 0; }
.event-highlight-content { padding: 30px 20px; }
.event-highlight-content .event-category { padding: 8px 12px; margin-bottom: 20px; }
.event-highlight-content h3 { font-size: var(--f-size-L); }
.event-tabs .nav-link { font-size: var(--f-size-M); padding: 15px 0; margin-right: 40px; }
.event-join-box { padding: 25px; }
.event-join-box p { font-size: var(--f-size-S); }
.event-details-box { padding: 25px 16px; }
.event-detail-item { padding: 18px 15px; }
.event-share h3 { font-size: var(--f-size-L); }
.event-social-list a { width: 40px; height: 40px; }
.event-social-list a svg { width: 24px; }


/* GALLERY PAGE CSS*/
.gallery-grid.gallery-grid-v2 { grid-auto-rows: 330px; }


/* CONTACT PAGE CSS */
.contact-info { padding-inline: 0; }
.contact-info h4 { font-size: var(--f-size-M);}

/* GREEN ENERGY PAGE CSS */
.green-energy-section .content-wrapper ul li , .green-energy-text-block .content-wrapper p , .green-energy-text-block .content-wrapper ul li { font-size: var(--f-size-M);}
.green-energy-text-block .image-wrapper { margin-bottom: -50px; }
.project-table thead th { font-size: var(--f-size-L); padding: 25px 20px; }
.project-table tbody td { padding: 25px 20px; font-size: var(--f-size-M); }


  
}

@media only screen and ( max-width: 991px ) {  
/* GLOBAL CSS */ 

    
/* HEADER CSS */
 .side-menu { width: min(450px, 90vw); }
 .main-header .hdr-rt { gap: 10px; }


/* HOME PAGE CSS */
 .l-subtitle p { font-size: var(--f-size-M); }
.hero-section .banner-center-content p { font-size: var(--f-size-ES);}
.banner-play-btn .video-play .core { width: 50px; height: 50px; }
.banner-play-btn .video-play .ring:nth-child(1) , .banner-play-btn .video-play .ring:nth-child(2) , .banner-play-btn .video-play .ring:nth-child(3) { width: 140px; height: 140px; }
.half-block-sec .image-wrapper { padding-bottom: 65%; }
.half-block-box .content-area { padding: 20px; }
.row.card-row { margin-inline: -16px; }
.row.card-row>* { padding-inline: 16px; }
.partner-card { height: 18vw; padding: 10px; }
.partners-logo-slider { padding-block: 60px 15px !important; }
.partners-logo-container { padding-inline: 30px; }
.partners-logo-slider .swiper-slide:nth-child(odd) .partner-card { transform: translateY(-30px); }
.partners-logo-slider .swiper-slide:nth-child(odd) .partner-card:hover { transform: translateY(-40px); }
.gallery-section .section-title { text-align: center;}
.gallery-grid { grid-auto-rows: 200px; } 
  

/*FOOTER */
.top-footer .ftr-info ul { max-width: 100%; }
.top-footer .ftr-info ul li { max-width: 100%; margin-bottom: 15px; font-size: var(--f-size-M); padding-left: 30px; }
.top-footer .ftr-info ul li svg { top: 3px; width: 20px; }
.top-footer .social { margin-block-start: 20px; margin-block-end: 30px;}
.top-footer .ftr-menu ul li { margin-bottom: 7px; } 
.top-footer .ftr-menu ul li a {  font-size: var(--f-size-M); }
.top-footer .ftr-logos { margin-block-start: 30px; text-align: left; display: flex; gap: 15px; }
.top-footer .ftr-logos img { margin-block-end: 0; width: 150px; }
.main-footer .bottom-footer { padding-block: 20px; }
.brand-logo img { width: 150px; }
.btm-ftr-menu ul { justify-content: start; margin: 10px 0;}


  
/*INNER BANNER SECTION CSS*/

/* PRODUCT PAGE CSS */
.facilities-section .counter-box { padding: 30px 0; }
.facilities-section .row.card-row { border-top: 0; }
.facilities-section .card-col:nth-child(1):before { display: none;}
.facilities-section .card-col:nth-child(2):after, .facilities-section .card-col:nth-child(2):before { display: none;}
.facilities-section .card-col:nth-child(1), .facilities-section .card-col:nth-child(2) { border-bottom: 1.2px dashed rgba(34, 34, 34, 0.6); }
.solar-section .container { max-width: 100%; padding: 0; }
.intro-panel { padding: 5rem;}
.intro-panel:before { display: none;}
.stat-box { padding:4rem 2rem; }
.solar-intro-right { width: 100%; }
.panel-caption li, .panel-caption p { font-size: var(--f-size-M);}
.process-tabs { justify-content: start;}
.process-panel-img { padding-bottom: 80%; }
.process-panel .panel-caption { padding: 1.75rem 1.5rem 1.5rem; }
.certifications-slider-wrap {width: calc(96vw - 0px);}
.certifications-section .section-title { margin-bottom: 0; }
.certifications-content p { font-size: var(--f-size-M);}


/* NEWS PAGE CSS */
.news-section .button-holder { margin-top: 30px; }

/* EVENT PAGE CSS */
.event-card .event-image .event-img { height: auto; padding-bottom: 80%; }
.event-card .event-image .event-img img { position: absolute; inset: 0; border-radius: 30px; }
.event-card.flex-row-reverse .event-date { right: 18px;}
.event-date { top: 18px; left: 18px; padding: 10px 12px; }
.event-category { padding: 9px 18px;}

/* EVENT DETAILS PAGE CSS */ 
.event-join-box { margin-top: 24px; }

/* GALLERY PAGE CSS*/
.gallery-grid.gallery-grid-v2 { grid-auto-rows: 270px; }
.gallery-grid a.item .fpo-watermark img { width: 60px; }

/* CONTACT PAGE CSS */ 
.contact-info { margin-top: 20px; }
.contact-form-section h2 { margin-bottom: 35px; }
.map-area { padding: 15px; }

/* GREEN ENERGY PAGE CSS */
.green-energy-section .image-wrapper { padding-bottom: 100%; }
.green-energy-section .content-wrapper ul, .green-energy-text-block .content-wrapper ul { margin-bottom: 30px; }
.green-energy-section .content-wrapper ul li, .green-energy-text-block .content-wrapper p, .green-energy-text-block .content-wrapper ul li { font-size: var (--f-size-S); }
.green-energy-section .content-wrapper h3 { font-size: var(--f-size-L); }
.green-energy-text-block .image-wrapper { padding-bottom: 160%; }
.green-energy-text-block .content-wrapper { padding-left: 10px; }
.green-energy-section .content-wrapper ul li, .green-energy-text-block .content-wrapper ul li { margin-bottom: 10px; }
.table-card { padding: 20px; }
.project-table thead th { font-size: var(--f-size-M); padding: 20px 12px; }
.project-table tbody td { padding: 20px 15px; }

}


@media only screen and ( max-width: 767px ) {  
/* GLOBAL CSS */ 
.container { max-width: 97%;}
.section-title { margin-bottom: 30px; }
:is(a.btn, .btn) { font-size: 16px; padding: 12px 20px !important; border-radius: 8px !important; gap: 8px; }
:is(a.btn, .btn) span img { width: 10px; height: 10px; }
.rounded-30 { border-radius: 20px; }
.l-subtitle p { font-size: var(--f-size-S); } 

  
/* HEADER CSS */
.main-header { padding-block: 20px; }
.main-header .container { max-width: 100%; }
.hamburger-btn .menu-text { display: none;}
.main-header .logo { width: 180px; }
.main-header .hdr-rt { gap: 5px; }
.search-toggle { display: none;}
.lang-toggle { padding: 5px 8px; gap: 4px; font-size: 14px; }
.lang-toggle svg.globe-icon { width: 16px; height: 16px; }
.main-header .hdr-rt .search-panel { display: none; }
.search-inner { gap: 10px; width: 100%; padding-right: 0; padding-left: 0;}
.search-inner input { border-bottom: 0; font-size: var(--f-size-Body);  color: var(--bs-black); }
.search-inner input::placeholder { color: var(--bs-black); } 
.side-menu { border-radius: 0 10px 10px 0; }
.main-header .side-menu .search-panel { display: block; position: relative; top: 0; height: auto; opacity: 1; visibility: visible; width: 90%; margin: 0 auto; transform: inherit; background-color: transparent; border-bottom: 1px solid var(--bs-black);}
.main-header .side-menu .side-menu-close { top: 0; right: 10px;}
.main-menu ul { padding: 0 15px; }
.main-menu > ul > li > a:after { border-width: 0 3px 3px 0; padding: 5px; right: 22px; }
.side-menu-close { margin: 0 20px 0 auto; }

/* SUB MENU */
.main-menu > ul > li > a { padding: 16px 22px;}
header span.submenu-arrow { top: 15px; height: 40px; width: 40px;}
header span.submenu-arrow::before {height: 13px; width: 13px;border-width: 0 2px 2px 0;}
  

/* HOME PAGE CSS */
.hero-section { padding-block-start: 90px; min-height: 570px; }
.hero-section .banner-bottom-row .row { display: block;}
.hero-section .banner-middle-row .banner-icon { margin-bottom: 15px; }
.hero-section .banner-middle-row .banner-center-content { padding-inline: 0; text-align: left; }
.hero-section .banner-middle-row .banner-center-content p { margin-bottom: 15px; }
.hero-section .banner-icon img { opacity: 1;}
.hero-section .banner-bottom-row .banner-icon , .hero-section .banner-bottom-row .banner-center-content { display: none; }
.hero-section .banner-bottom-row .banner-play-btn { width: auto; }
.hero-section .banner-play-btn button.video-play.playing .pause { width: 12px; height: 18px; }
.hero-section .banner-play-btn button.video-play.playing .pause span { width: 3px;}
.banner-play-btn .video-play .triangle { border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 15px solid #ffffff; margin-left: 4px; }
.half-block-sec .image-wrapper, .half-block-box .image-wrapper:after { border-radius: 20px; }
.home-banner-img:after, .home-banner-video:after { background: linear-gradient(90deg, rgb(0 0 0 / 0%) 0%, #001835cc 100%); }
.home-product-section .col-md-6:last-child .half-block-box { margin-bottom: 0; }
.l-subtitle p br { display: none;}
.why-choose-section .section-title .l-subtitle br { display: block;}
.why-choose-card h3, .counter-box { min-height: auto; }
.card-col:last-child:before, .why-choose-section .card-col:nth-child(3n):before, .why-choose-section .card-col:nth-child(3n):after { display: block;} 
.why-choose-section .card-col:last-child:after { display: none;}
.row.card-row { margin-inline: calc(-.5 * var(--bs-gutter-x)); }
.row.card-row>* { padding-inline: calc(var(--bs-gutter-x) * .5); }
.why-choose-card { padding-top: 25px; padding-bottom: 25px; padding-left: 20px;padding-right: 20px; border-left: 1px dashed var(--color-primary); border-right: 1px dashed var(--color-primary); border-top: 1.2px dashed rgba(34, 34, 34, 0.6); }
.why-choose-section .card-col:last-child .why-choose-card { border-bottom: 1.2px dashed rgba(34, 34, 34, 0.6); }
.row.card-row { border-top: 0;}
.card-col::before { content: ""; position: absolute; top: -6px; left:6px; right: inherit; width: 12px; height: 12px; background-color: var(--color-primary); transform: rotate(45deg); z-index: 5; }
.card-col:not(:last-child)::after { display: none;}
.facilities-section .row.card-row { margin-inline: 0; border: 1.2px dashed rgba(34, 34, 34, 0.6); }
.why-choose-card .image-wrapper {border-radius: 20px;}
.partners-logo-container { padding-inline: 15px; }
.partner-card { height: 170px; padding: 14px; }
.gallery-grid a.item { grid-column: span 6 !important; }
.gallery-grid { grid-auto-rows: 180px; }
.gallery-grid .item:nth-child(1) , .gallery-grid .item:nth-child(2) , .gallery-grid .item:nth-child(3) { grid-column: span 6; }


/*FOOTER*/
.main-footer .bottom-footer .brand-logo { margin-bottom: 15px; }


/* INNER BANNER CSS */
.inner-banner { min-height: 420px; max-height: 420px; }
.inner-banner p { font-size: var(--f-size-M); }

/* ABOUT PAGE CSS */
.fabric-section .content-area { padding: 20px 0; }

/* PRODUCT PAGE CSS */
.facilities-section .content-wrapper { margin-bottom: 24px; }
.facilities-section .card-col:nth-child(1), .facilities-section .card-col:nth-child(3) { border-right: 1.2px dashed rgba(34, 34, 34, 0.6);}
.facilities-section .card-col:nth-child(3)::before { display: none;}
.facilities-section .card-col:last-child::before { left: -7px;}
.facilities-section .counter-box h2 { margin-bottom: 10px; }
.stat-col:nth-child(3) { order: 4; }
.intro-panel { padding: 4rem 1.5rem; }
.stat-box { padding: 2.5rem 1.5rem; }
.process-panel-img { padding-bottom: 70%; }
.certifications-content { padding-right: 0; padding-bottom: 40px; }
.stat-col:first-child .stat-box:after, .stat-col:last-child .stat-box:after { background: #0f0f0f8f; }

/* EVENT PAGE CSS */ 
.event-date { padding: 7px 12px; border: 4px solid var(--bs-white); border-radius: 12px; min-width: 175px; }
.event-card , .event-card .event-image .event-img img { border-radius: 20px; }

/* EVENT DETAILS PAGE CSS */ 
.single-p-header .event-feature-img { padding-block: 120px 0; }
.event-feature-img .event-img { border-radius: 20px; }
.event-organizer .img-wrapper { margin-bottom: 24px; }
.event-organizer .event-organiser-top { padding-bottom: 30px; margin-bottom: 40px; }
.event-highlight-image { height: auto; padding-bottom: 70%; position: relative;}
.event-highlight-image img { position: absolute; inset: 0; }

/* GALLERY PAGE CSS*/ 
.gallery-grid-v2 .item:nth-child(7) { grid-column: span 12; }

/* CONTACT PAGE CSS */  
.contact-info { margin-top: 0; text-align: center; margin-bottom: 24px; border: 1px solid #ccc; padding: 20px; }
.contact-info .icon-box { margin-bottom: 1rem !important; }
.contact-info .icon-box img { width: 50px; }
.map-area { border-radius: 20px; }
.map-area .map-inner-area { border-radius: 10px; }
.request-meeting-modal .modal-close-btn { width: 40px; height: 40px; }
.request-meeting-modal .modal-close-btn img { width: 18px; }

/* GREEN ENERGY PAGE CSS */ 
.green-energy-section .image-wrapper { padding-bottom: 75%; margin-bottom: 24px; }
.green-energy-section .content-wrapper ul:last-child, .green-energy-text-block .content-wrapper ul:last-child { margin-bottom: 0; }
.green-energy-section .content-wrapper ul li { padding-left: 1.5rem; }
.green-energy-text-block .row:after { display: none;}
.green-energy-text-block { background-color: var(--bs-black);}
.green-energy-text-block .image-wrapper { margin-bottom: 24px; width: 100%; margin-left: 0; padding-bottom: 75%; position: relative; overflow: hidden; border-radius: 30px; }
.table-card { padding: 12px; }
.project-table thead th { font-size: var(--f-size-S); padding: 15px 10px; font-weight: normal; }
.project-table tbody td { padding: 10px; font-size: var(--f-size-S); font-weight: normal; line-height: 1.4; }

/* 404 page CSS */
.common-page-wrapper { min-height: calc(100dvh - 96px - 657px);}



}

@media only screen and ( max-width: 575px ) { 
 
/* EVENT DETAILS PAGE CSS */ 
.event-tabs { display: block; border: 0; }
.event-tabs .nav-link { margin-right: 0; width: 100%; border: 1px solid rgba(55, 55, 55, 0.5) !important;}
.event-feature-img .event-img { padding-bottom: 63.5%;}
.event-organizer { padding: 24px 16px; }
html[lang="de-CH"] .event-organizer { padding: 24px 14px; }
.event-highlight-content .event-category { width: auto;}
.event-highlight-content { padding: 22px 16px; }

/* GALLERY PAGE CSS*/ 
.gallery-grid.gallery-grid-v2 { grid-auto-rows: 180px; }

/* PRODUCT PAGE CSS */ 
.process-panel-img { padding-bottom: 120%; }
.process-panel::after { background: linear-gradient(180deg, rgb(26 26 26 / 35%) 0%, #1A1A1A 100%); }




}
@media only screen and ( max-width: 479px ) { 
  
/* HOME PAGE CSS */
.partner-card { height: 110px; padding:10px;}
  
  /*FOOTER*/
  

  
/* PRODUCT PAGE CSS */ 
.stat-box .stat-number { margin-bottom: 20px; }
.process-tabs { gap: 0.5rem; }
.process-tabs .nav-item { width: calc(50% - 0.5rem); }
.process-tabs .nav-link { padding: 0.5rem 1rem; width: 100%; min-height: 48px; }

.process-panel .panel-caption { padding: 1rem; }
.panel-caption li { padding-left: 1.6rem;font-size: var(--f-size-S);}
.panel-caption p { font-size: var(--f-size-S);}
.certificate-card { height: 15em; padding: 16px; }
.swiper-button-wrap button { width: 40px; height: 40px; }
.certs-controls { gap: 20px; margin-top: 30px; }


}
