/*
Theme Name: BCE Custom 1.1
Theme URI: https://bce.in.ua/
Author: Nataliia Karenhina
Description: Lightweight custom WordPress theme for BCE. No page builder dependencies.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: bce-custom
*/
body{margin:0}
.bce-page{min-height:100vh}
.bce-page img{max-width:100%}
.bce-page .bce-hero-image img{max-width:none}
.bce-page .bce-portrait img{max-width:100%}
.bce-page .bce-skip-link{position:absolute;left:-9999px;top:8px;z-index:9999;background:#fff;padding:10px}
.bce-page .bce-skip-link:focus{left:8px}
/* BCE preview: isolated styles */
.bce-page{--ink:#172337;--muted:#637086;--line:#e5eaf2;--blue:#3859db;--violet:#8a55dc;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:#fff;line-height:1.6}
.bce-page *{box-sizing:border-box}.bce-page h1,.bce-page h2,.bce-page h3,.bce-page p{margin:0}.bce-page a{text-decoration:none}.bce-page .bce-wrap{width:min(1120px,calc(100% - 40px));margin:auto}.bce-page .bce-section{padding:90px 0}.bce-page .bce-eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#5269bd;font-weight:800;margin-bottom:15px}.bce-page h1{font-size:clamp(42px,6vw,76px);letter-spacing:-.055em;line-height:1.06;font-weight:800}.bce-page h2{font-size:clamp(29px,3.6vw,45px);letter-spacing:-.04em;line-height:1.16;font-weight:800;margin-bottom:19px}.bce-page h3{font-size:21px;line-height:1.3;margin-bottom:11px;font-weight:750}.bce-page .bce-lead{font-size:clamp(17px,2vw,20px);color:var(--muted);max-width:720px}.bce-page .bce-btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;background:#3657d8;color:#fff!important;border-radius:11px;font-weight:750;box-shadow:0 10px 30px #3657d82b;transition:transform .2s}.bce-page .bce-btn:hover{transform:translateY(-2px)}.bce-page .bce-hero{padding:80px 0 95px;background:radial-gradient(ellipse at 85% 20%,#dfe6ff 0,transparent 48%),linear-gradient(155deg,#fff 35%,#f6f8ff)}.bce-page .bce-brand{font-size:13px;font-weight:800;letter-spacing:.17em;margin-bottom:70px}.bce-page .bce-brand span{color:#6d78a3;font-weight:550}.bce-page .bce-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:38px;align-items:center}.bce-page .bce-gradient{background:linear-gradient(110deg,#3159db,#8a50d6 65%,#ed6d99);-webkit-background-clip:text;background-clip:text;color:transparent}.bce-page .bce-hero p{max-width:620px;margin-top:24px;color:#5c6a80;font-size:18px}.bce-page .bce-hero .bce-btn{margin-top:28px}.bce-page .bce-stat{background:#ffffffb8;border:1px solid #e2e8f6;border-radius:24px;padding:34px;box-shadow:0 20px 70px #1d3b7c0b;transform:rotate(3deg)}.bce-page .bce-stat strong{display:block;font-size:clamp(90px,11vw,160px);line-height:1;letter-spacing:-.09em;color:#4159cf}.bce-page .bce-stat span{font-weight:750;font-size:18px}.bce-page .bce-stat small{display:block;color:#7a879e;margin-top:8px}.bce-page .bce-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}.bce-page .bce-card{border:1px solid var(--line);border-radius:19px;padding:27px 22px;background:#fff}.bce-page .bce-card p{font-size:15px;color:var(--muted)}.bce-page .bce-card .bce-num{display:block;color:#5c6ed0;font-size:13px;font-weight:800;margin-bottom:28px}.bce-page .bce-tinted{background:#f6f8fc}.bce-page .bce-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:37px}.bce-page .bce-step{background:#fff;border:1px solid #e4e9f2;border-radius:16px;padding:24px 20px}.bce-page .bce-step b{display:block;color:#6b7ac9;margin-bottom:16px}.bce-page .bce-step p{color:var(--muted);font-size:14px}.bce-page .bce-loop{text-align:center;color:#63749b;font-size:14px;margin-top:20px}.bce-page .bce-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.bce-page .bce-case{background:#fff;border:1px solid var(--line);border-radius:19px;overflow:hidden}.bce-page .bce-case-art{height:130px;background:linear-gradient(135deg,#e7edff,#d6ddfa);display:flex;align-items:center;justify-content:center;color:#4258b1;font-size:48px;font-weight:800;letter-spacing:-.07em}.bce-page .bce-case:nth-child(2) .bce-case-art{background:linear-gradient(135deg,#e9e6fa,#f2e7f9)}.bce-page .bce-case:nth-child(3) .bce-case-art{background:linear-gradient(135deg,#e5f0f6,#dce9f0)}.bce-page .bce-case-body{padding:23px}.bce-page .bce-case-body p{color:var(--muted);font-size:14px}.bce-page .bce-about{display:grid;grid-template-columns:1fr 1.5fr;gap:50px;align-items:center}.bce-page .bce-portrait{aspect-ratio:4/4.5;border-radius:22px;background:linear-gradient(145deg,#e3e9fa,#d9dff2);display:flex;align-items:center;justify-content:center;text-align:center;color:#62739d;padding:24px}.bce-page .bce-about p{color:var(--muted);margin-bottom:15px}.bce-page .bce-dates{display:flex;gap:35px;margin-top:23px}.bce-page .bce-dates strong{display:block;font-size:31px;color:#3c58c3}.bce-page .bce-dates small{color:#7c879b}.bce-page .bce-faq{max-width:850px}.bce-page details{border-bottom:1px solid var(--line);padding:18px 0}.bce-page summary{cursor:pointer;font-weight:750;font-size:17px}.bce-page details p{color:var(--muted);margin-top:12px}.bce-page .bce-contact{border-radius:25px;padding:48px;background:linear-gradient(120deg,#edf2ff,#f8f5ff);display:flex;justify-content:space-between;align-items:center;gap:30px}.bce-page .bce-contact p{color:var(--muted)}.bce-page .bce-footer{background:#131c2b;color:#fff;padding:70px 0 24px}.bce-page .bce-footer h2{color:#fff;max-width:740px}.bce-page .bce-footer p{color:#bbc5d5}.bce-page .bce-footer .bce-btn{margin-top:25px;background:#fff;color:#182237!important;box-shadow:none}.bce-page .bce-footer-cols{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #334055;margin-top:60px;padding-top:35px}.bce-page .bce-footer-cols a{color:#c4cedf;margin-left:18px}.bce-page .bce-footer-bottom{border-top:1px solid #334055;margin-top:38px;padding-top:20px;color:#9eaec5;font-size:13px;display:flex;justify-content:space-between;gap:15px}.bce-page .bce-footer-bottom a{color:#b9c6d9}.bce-page .bce-muted{color:var(--muted)}
@media(max-width:900px){.bce-page .bce-grid4,.bce-page .bce-steps{grid-template-columns:repeat(2,1fr)}.bce-page .bce-hero-grid{grid-template-columns:1fr}.bce-page .bce-stat{max-width:290px;transform:none}.bce-page .bce-grid3{grid-template-columns:1fr}.bce-page .bce-about{grid-template-columns:1fr}.bce-page .bce-portrait{max-width:360px}.bce-page .bce-section{padding:65px 0}}
@media(max-width:560px){.bce-page .bce-wrap{width:calc(100% - 32px)}.bce-page .bce-grid4,.bce-page .bce-steps{grid-template-columns:1fr}.bce-page .bce-hero{padding:35px 0 65px}.bce-page .bce-brand{margin-bottom:45px}.bce-page .bce-contact{padding:30px 24px;display:block}.bce-page .bce-contact .bce-btn{margin-top:24px}.bce-page .bce-footer-cols,.bce-page .bce-footer-bottom{flex-direction:column}.bce-page .bce-footer-cols a{margin:0 15px 0 0}.bce-page .bce-dates{gap:20px}}
/* BCE — Hero illustration */
.bce-page .bce-hero-image {
width: 100%;
min-width: 0;
display: flex;
align-items: center;
justify-content: center;
}
.bce-page .bce-hero-image img {
display: block;
width: 115%;
max-width: none;
height: auto;
object-fit: contain;
}
@media (max-width: 767px) {
.bce-page .bce-hero-image img {
width: 100%;
max-width: 100%;
}
}
/* BCE — Hero composition */
@media (min-width: 992px) {
.bce-page .bce-hero-grid {
grid-template-columns: 60% 40%;
align-items: center;
}
.bce-page .bce-hero-image {
position: relative;
z-index: 0;
overflow: visible;
}
.bce-page .bce-hero-image img {
width: 160%;
max-width: none;
transform: translateX(-20%);
}
.bce-page .bce-hero-grid > div:first-child {
position: relative;
z-index: 1;
}
}
/* BCE — корректировка Hero */
@media (min-width: 992px) {
.bce-page .bce-hero-image img {
width: 160%;
transform: translateX(0);
}
}
/* BCE — Steps illustrations */
.bce-page .bce-step-image {
height: 170px;
display: flex;
align-items: center;
justify-content: center;
margin: -8px -8px 16px;
}
.bce-page .bce-step-image img {
display: block;
width: 100%;
height: 100%;
object-fit: contain;
}
.bce-page .bce-step {
min-width: 0;
}
@media (max-width: 767px) {
.bce-page .bce-step-image {
height: 190px;
}
}
/* BCE — Case illustrations */
.bce-page .bce-case-art {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 18px 26px;
min-height: 155px;
height: auto;
box-sizing: border-box;
}
.bce-page .bce-case-art img {
display: block;
width: 130px;
height: 130px;
max-width: 55%;
object-fit: contain;
flex-shrink: 1;
}
.bce-page .bce-case-number {
display: block;
font-size: clamp(42px, 4vw, 66px);
font-weight: 800;
line-height: 1;
color: #465bc4;
letter-spacing: -0.05em;
flex-shrink: 0;
}
@media (max-width: 767px) {
.bce-page .bce-case-art {
min-height: 145px;
padding: 16px 22px;
}
.bce-page .bce-case-art img {
width: 115px;
height: 115px;
}
.bce-page .bce-case-number {
font-size: 54px;
}
}
/* BCE — About portrait */
.bce-page .bce-portrait {
padding: 0;
overflow: hidden;
}
.bce-page .bce-portrait img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
}

/* Navigation and interior pages — 1.1 */
.bce-page .bce-site-header{background:#fff;border-bottom:1px solid #e5eaf2;position:sticky;top:0;z-index:1000}
.bce-page .bce-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px}
.bce-page .bce-logo{font-weight:850;font-size:24px;letter-spacing:-.04em;color:#172337}
.bce-page .bce-logo small{display:block;font-size:10px;font-weight:650;letter-spacing:.12em;color:#637086;line-height:1.2}
.bce-page .bce-nav{display:flex;align-items:center;gap:32px}
.bce-page .bce-nav a{color:#172337;font-weight:700;font-size:15px}
.bce-page .bce-nav a:hover,.bce-page .bce-nav a:focus-visible{color:#3859db}
.bce-page .bce-nav details{position:relative}
.bce-page .bce-nav summary{list-style:none;cursor:pointer;font-weight:700;font-size:15px;white-space:nowrap}
.bce-page .bce-nav summary::-webkit-details-marker{display:none}
.bce-page .bce-nav details{border:0;padding:0}
.bce-page .bce-subnav{position:absolute;top:calc(100% + 16px);left:-18px;min-width:245px;padding:10px;background:#fff;border:1px solid #e5eaf2;border-radius:14px;box-shadow:0 14px 40px #1723371c;display:grid;gap:2px}
.bce-page .bce-subnav a{display:block;padding:10px 12px;border-radius:8px;font-size:14px}
.bce-page .bce-subnav a:hover{background:#f6f8fc}
.bce-page .bce-mobile-menu{display:none}
.bce-page .bce-inner-hero{padding:76px 0 42px;background:linear-gradient(135deg,#f7f9ff,#fff)}
.bce-page .bce-inner-hero p{color:#637086;max-width:700px}
.bce-page .bce-content{max-width:850px;font-size:17px}
.bce-page .bce-content p{margin:0 0 1.25em}
.bce-page .bce-content h2{margin:1.5em 0 .55em}
.bce-page .bce-content h3{margin:1.2em 0 .5em}
.bce-page .bce-content a{color:#3859db;text-decoration:underline}
.bce-page .bce-content ul,.bce-page .bce-content ol{padding-left:1.4em;margin-bottom:1.3em}
.bce-page .bce-listing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:34px}
.bce-page .bce-listing-card{border:1px solid #e5eaf2;border-radius:18px;padding:26px;background:#fff}
.bce-page .bce-listing-card a{color:#172337}
.bce-page .bce-listing-card p{color:#637086;font-size:15px}
.bce-page .bce-featured{width:100%;height:auto;border-radius:18px;margin:0 0 25px}
@media(max-width:767px){
 .bce-page .bce-header-inner{min-height:68px;align-items:flex-start;padding-top:16px;padding-bottom:16px}
 .bce-page .bce-mobile-menu{display:block;margin-left:auto;border:0;padding:0}
 .bce-page .bce-mobile-menu>summary{list-style:none;cursor:pointer;font-weight:750;padding:6px 10px;border:1px solid #e5eaf2;border-radius:9px}
 .bce-page .bce-mobile-menu>summary::-webkit-details-marker{display:none}
 .bce-page .bce-nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid #e5eaf2;padding:16px max(16px,calc((100% - 1120px)/2));display:grid;gap:18px;box-shadow:0 12px 22px #17233712}
 .bce-page .bce-nav .bce-subnav{position:static;box-shadow:none;margin-top:10px;min-width:0}
 .bce-page .bce-listing{grid-template-columns:1fr}
 .bce-page .bce-inner-hero{padding:50px 0 28px}
 .bce-page .bce-contact{display:flex;flex-direction:column;align-items:flex-start}
}

.bce-page .bce-menu-toggle,.bce-page .bce-menu-label{display:none}
@media(max-width:767px){
 .bce-page .bce-header-inner{align-items:center}
 .bce-page .bce-menu-label{display:block;margin-left:auto;cursor:pointer;font-weight:750;padding:7px 12px;border:1px solid #e5eaf2;border-radius:9px}
 .bce-page .bce-nav{display:none}
 .bce-page .bce-menu-toggle:checked~.bce-nav{display:grid}
 .bce-page .bce-menu-toggle:focus-visible+.bce-menu-label{outline:2px solid #3859db}
}

/* BCE — Fixed navigation */
.bce-page .bce-site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
    background: #fff;
}

.bce-page {
    padding-top: 78px;
}

body.admin-bar .bce-page .bce-site-header {
    top: 32px;
}

@media (max-width: 782px) {
    body.admin-bar .bce-page .bce-site-header {
        top: 46px;
    }
}

@media (max-width: 767px) {
    .bce-page {
        padding-top: 68px;
    }
}

/* Services page */
.bce-page .bce-services-page .bce-grid4 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.bce-page .bce-services-page .bce-card {
  min-width: 0;
}

.bce-page .bce-services-page .bce-card h2 {
  font-size: clamp(28px, 3vw, 38px);
  line-height: 1.15;
  overflow-wrap: break-word;
}

.bce-page .bce-services-page .bce-contact .bce-btn {
  flex-shrink: 0;
  white-space: nowrap;
}

@media (max-width: 767px) {
  .bce-page .bce-services-page .bce-grid4 {
    grid-template-columns: 1fr;
  }

  .bce-page .bce-services-page .bce-contact {
    flex-direction: column;
    align-items: flex-start;
  }
}


/* BCE: уменьшаем отступы внутренних страниц */
.bce-page .bce-inner-hero {
    padding-bottom: 45px;
}

.bce-page .bce-inner-hero + .bce-section {
    padding-top: 35px;
}

.bce-page .bce-inner-hero + .bce-section .bce-content {
    padding-top: 0;
}



/* Уменьшаем расстояние между заголовком и содержимым */
.bce-page .bce-inner-hero {
    padding-bottom: 35px;
}

.bce-page .bce-inner-hero + .bce-section {
    padding-top: 35px;
}


/* Ширина содержимого внутренних страниц */
.bce-page .bce-section > .bce-wrap.bce-content {
    max-width: 1200px;
    width: calc(100% - 40px);
    margin-left: auto;
    margin-right: auto;
}



