/* Additions used by the admin panel's header/footer options */
.logo-img{height:52px;width:auto;max-width:180px;object-fit:contain;display:block;flex-shrink:0;border-radius:13px;}
.foot-brand .logo-img{height:46px;box-shadow:0 0 0 1.5px rgba(255,255,255,.3);border-radius:12px;}
.foot-social{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.foot-social a{color:#fff;text-decoration:none;font-size:12.5px;font-weight:600;border:1px solid rgba(255,255,255,.25);border-radius:50px;padding:6px 13px;}
.foot-social a:hover{background:rgba(255,255,255,.12);}

/* Header always sticks to the very top while scrolling */
header.site{position:-webkit-sticky;position:sticky;top:0 !important;z-index:100;}

/* ============ Notes (used on destination pages) ============ */
.docs-note{
  display:flex;gap:14px;align-items:flex-start;max-width:900px;margin:22px auto 0;
  background:#fff;border:1px solid var(--border,#e2e6f0);border-left:4px solid var(--blue,#1a3fa0);
  border-radius:12px;padding:16px 18px;font-size:14.5px;line-height:1.65;color:var(--text,#1a1f36);
}
.docs-note-icon{font-size:22px;line-height:1.2;flex-shrink:0;}

/* ============ Document checklist (Cyprus) ============ */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.doc-progress{max-width:900px;margin:0 auto 22px;background:#fff;border:1px solid var(--border,#e2e6f0);border-radius:14px;padding:16px 18px;}
.doc-progress-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:10px;}
.doc-progress-top b{font-size:15.5px;color:var(--navy,#0b1f52);}
.doc-progress-hint{font-size:12.5px;color:var(--muted,#5b6480);}
.doc-progress-bar{height:8px;background:#eef1f8;border-radius:50px;overflow:hidden;}
.doc-progress-bar span{display:block;height:100%;width:0;border-radius:50px;background:linear-gradient(90deg,#22c55e,#16a34a);transition:width .3s ease;}

.doc-checklist{max-width:900px;margin:0 auto;display:grid;gap:22px;}
.doc-group-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;color:var(--navy,#0b1f52);margin-bottom:10px;}
.doc-group-title span{width:34px;height:34px;border-radius:9px;background:var(--blue-pale,#eef3ff);display:inline-flex;align-items:center;justify-content:center;font-size:17px;}
.doc-items{list-style:none;display:grid;gap:10px;}
.doc-item{
  position:relative;display:grid;grid-template-columns:30px 1fr;gap:14px;align-items:start;
  background:#fff;border:1.5px solid var(--border,#e2e6f0);border-radius:12px;padding:16px 18px;
  transition:border-color .2s,background .2s;
}
.doc-tick{position:absolute;opacity:0;width:30px;height:30px;left:18px;top:16px;margin:0;cursor:pointer;}
.doc-box{
  grid-column:1;width:30px;height:30px;border-radius:8px;border:2px solid #c3cbe0;background:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;
}
.doc-box::after{content:"✓";font-weight:900;font-size:17px;color:#fff;transform:scale(0);transition:transform .15s;}
.doc-tick:focus-visible + .doc-box{outline:3px solid var(--yellow,#ffc107);outline-offset:2px;}
.doc-tick:checked + .doc-box{background:#16a34a;border-color:#16a34a;}
.doc-tick:checked + .doc-box::after{transform:scale(1);}
.doc-item:has(.doc-tick:checked){border-color:#86efac;background:#f6fef9;}
.doc-item:has(.doc-tick:checked) h4{color:#166534;}
.doc-text h4{font-size:15.5px;font-weight:800;line-height:1.35;margin-bottom:3px;}
.doc-text p{font-size:13.5px;color:var(--muted,#5b6480);line-height:1.55;}
.doc-where{display:inline-block;margin-top:8px;font-size:12.5px;font-weight:700;color:#b45309;background:#fff7e6;border-radius:6px;padding:3px 9px;}
.doc-attest{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;font-size:12px;}
.doc-attest b{color:var(--navy,#0b1f52);margin-right:2px;}
.doc-attest span{background:var(--blue-pale,#eef3ff);color:var(--blue,#1a3fa0);font-weight:600;border-radius:50px;padding:3px 10px;}
.docs-actions{max-width:900px;margin:22px auto 0;display:flex;gap:10px;flex-wrap:wrap;justify-content:center;}
@media (max-width:560px){ .doc-item{padding:14px;gap:12px;} .doc-tick{left:14px;top:14px;} }

@media print{
  header.site,footer.site,.mobile-menu,.float-wa,.pec-banner,.pec-ticker,.pec-popup-overlay,.docs-actions,.doc-progress-hint{display:none !important;}
  body{background:#fff;}
  body.print-docs main > section:not(#requiredDocs){display:none !important;}
  .doc-item{break-inside:avoid;border-color:#999;}
  .doc-box{border-color:#333;}
}

/* ============ Cyprus page: hero, requirements, programmes ============ */
.cy-intake-pill{
  display:inline-block;margin:6px 0 14px;padding:7px 16px;border-radius:50px;
  background:var(--yellow,#ffc107);color:#1a1f36;font-size:13px;font-weight:800;letter-spacing:.3px;
}
.cy-hero-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:22px 0 34px;position:relative;z-index:2;}

.cy-req-panel{
  position:relative;max-width:1000px;margin:0 auto;border-radius:22px;padding:34px 30px;color:#fff;
  background:radial-gradient(120% 140% at 100% 0%,#1a3fa0 0%,#0b1f52 55%,#071433 100%);
  border:2px solid rgba(90,140,255,.75);
  box-shadow:0 0 0 1px rgba(90,140,255,.25),0 0 28px rgba(60,120,255,.45),0 20px 50px rgba(11,31,82,.35);
}
.cy-req-head{text-align:center;margin-bottom:24px;}
.cy-req-head .sec-eyebrow{color:var(--yellow,#ffc107);}
.cy-req-head h2{color:#fff;font-size:clamp(22px,3.2vw,30px);font-weight:900;letter-spacing:-.5px;margin:6px 0 6px;}
.cy-req-head p{color:rgba(255,255,255,.78);font-size:15px;}
.cy-req-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.cy-req{
  display:flex;align-items:center;gap:14px;padding:18px 16px;border-radius:14px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
}
.cy-req-ico{
  width:48px;height:48px;flex-shrink:0;border-radius:12px;display:flex;align-items:center;justify-content:center;
  font-size:22px;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.3);
}
.cy-req b{display:block;font-size:15.5px;font-weight:900;letter-spacing:.3px;text-transform:uppercase;line-height:1.25;}
.cy-req b span{color:var(--yellow,#ffc107);}
.cy-req small{display:block;font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:rgba(255,255,255,.85);margin-top:3px;}
.cy-req-foot{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:26px;}
.cy-intake-badge{
  background:var(--yellow,#ffc107);color:#1a1f36;font-weight:900;font-size:16px;letter-spacing:.5px;
  padding:11px 20px;border-radius:10px;box-shadow:0 6px 20px rgba(255,193,7,.3);
}
@media (max-width:900px){ .cy-req-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:520px){
  .cy-req-panel{padding:26px 16px;border-radius:18px;}
  .cy-req-grid{grid-template-columns:1fr;}
}

.cy-prog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;max-width:1080px;margin:0 auto;}
.cy-prog{
  display:flex;gap:14px;align-items:flex-start;background:var(--bg,#f5f7fc);
  border:1px solid var(--border,#e2e6f0);border-left:4px solid var(--blue,#1a3fa0);
  border-radius:12px;padding:16px 18px;transition:transform .2s,box-shadow .2s;
}
.cy-prog:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(11,31,82,.1);}
.cy-prog-ico{width:42px;height:42px;flex-shrink:0;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 2px 8px rgba(11,31,82,.08);}
.cy-prog h3{font-size:15px;font-weight:800;line-height:1.35;color:var(--navy,#0b1f52);}
.cy-prog p{font-size:13px;color:var(--muted,#5b6480);margin-top:3px;line-height:1.5;}
#cyChecker,#cyRequirements{scroll-margin-top:90px;}

/* ============ Contact page: Google Map ============ */
.map-section{margin-top:56px;}
.map-tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:16px;}
.map-tab{
  display:flex;flex-direction:column;align-items:center;gap:2px;min-width:150px;
  padding:11px 18px;border-radius:12px;border:1.5px solid var(--border,#e2e6f0);background:#fff;
  font-family:inherit;font-size:14.5px;font-weight:700;line-height:1.3;color:var(--navy,#0b1f52);cursor:pointer;transition:all .18s;
}
.map-tab small{font-size:11.5px;font-weight:600;color:var(--muted,#5b6480);text-transform:uppercase;letter-spacing:.5px;}
.map-tab:hover{border-color:var(--blue,#1a3fa0);}
.map-tab.active{background:var(--blue,#1a3fa0);border-color:var(--blue,#1a3fa0);color:#fff;box-shadow:0 8px 20px rgba(26,63,160,.25);}
.map-tab.active small{color:rgba(255,255,255,.8);}
.map-tab:focus-visible{outline:3px solid var(--yellow,#ffc107);outline-offset:2px;}
.map-panel{background:#fff;border:1px solid var(--border,#e2e6f0);border-radius:18px;overflow:hidden;box-shadow:0 12px 32px rgba(11,31,82,.08);}
.map-frame{position:relative;height:420px;background:#e8ecf5;}
.map-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.map-info{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:16px 20px;}
.map-info b{display:block;font-size:14.5px;color:var(--navy,#0b1f52);}
.map-info span{display:block;font-size:13px;color:var(--muted,#5b6480);margin-top:3px;}
@media (max-width:600px){
  .map-tab{min-width:0;flex:1;padding:10px 8px;font-size:13px;}
  .map-frame{height:300px;}
  .map-info .btn{width:100%;justify-content:center;}
}

/* ============ Header: student portal + call ============ */
.nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.nav-portal{
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;text-decoration:none;
  background:var(--yellow,#ffc107);color:#0b1f52;font-size:13.5px;font-weight:800;
  padding:11px 16px;border-radius:10px;box-shadow:0 6px 16px rgba(255,193,7,.35);transition:transform .18s,box-shadow .18s;
}
.nav-portal:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(255,193,7,.45);}
.nav-call{
  width:44px;height:44px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--grad);color:#fff;box-shadow:0 6px 16px rgba(26,63,160,.3);transition:transform .18s;
}
.nav-call:hover{transform:translateY(-2px);}
.nav-portal:focus-visible,.nav-call:focus-visible{outline:3px solid var(--blue,#1a3fa0);outline-offset:2px;}
@media (max-width:980px){ .nav-actions{display:none;} }
.mobile-portal{margin-top:10px;background:var(--yellow,#ffc107)!important;color:#0b1f52!important;text-align:center;font-weight:800!important;}

/* ============ Chat buttons ============ */
body.pec-has-chat .float-wa{display:none !important;}
.pec-chat{position:fixed;right:20px;bottom:20px;z-index:95;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-family:inherit;}
.pec-chat-toggle{
  display:flex;align-items:center;gap:10px;height:58px;padding:0 20px 0 16px;border:none;border-radius:999px;cursor:pointer;
  background:#25D366;color:#fff;font-family:inherit;font-size:15px;font-weight:800;line-height:1;box-shadow:0 10px 26px rgba(37,211,102,.45);
  transition:transform .2s,background .2s;
}
.pec-chat-toggle:hover{transform:translateY(-2px);}
.pec-chat-toggle:focus-visible{outline:3px solid #0b1f52;outline-offset:3px;}
.pec-chat-open,.pec-chat-x{display:flex;}
.pec-chat-x{display:none;}
.pec-chat.open .pec-chat-toggle{background:#0b1f52;box-shadow:0 10px 26px rgba(11,31,82,.4);padding:0 17px;}
.pec-chat.open .pec-chat-open,.pec-chat.open .pec-chat-label{display:none;}
.pec-chat.open .pec-chat-x{display:flex;}
.pec-chat-menu[hidden],.pec-enq-overlay[hidden],.pec-enq-form[hidden],.pec-enq-done[hidden],.pec-enq-error[hidden]{display:none !important;}
.pec-chat-menu{
  width:300px;max-width:calc(100vw - 40px);background:#fff;border-radius:18px;padding:14px;
  box-shadow:0 20px 50px rgba(11,31,82,.25);border:1px solid #e2e6f0;display:flex;flex-direction:column;gap:6px;
  animation:pecChatIn .18s ease;
}
@keyframes pecChatIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
.pec-chat-title{font-size:13px;font-weight:800;color:#0b1f52;text-transform:uppercase;letter-spacing:.6px;margin:2px 4px 6px;}
.pec-chat-item{
  display:flex;align-items:center;gap:12px;padding:10px;border-radius:12px;text-decoration:none;color:#141a33;
  background:none;border:none;width:100%;text-align:left;cursor:pointer;font:inherit;transition:background .15s;
}
.pec-chat-item:hover,.pec-chat-item:focus-visible{background:#f3f6fd;outline:none;}
.pec-chat-item:focus-visible{box-shadow:0 0 0 2px #1a3fa0 inset;}
.pec-chat-item b{display:block;font-size:14.5px;font-weight:700;line-height:1.3;}
.pec-chat-item small{display:block;font-size:12.5px;color:#5b6480;line-height:1.3;}
.pec-chat-ico{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;}
.pec-chat-item.wa .pec-chat-ico{background:#1da851;}
.pec-chat-item.call .pec-chat-ico{background:#1a3fa0;}
.pec-chat-item.enq .pec-chat-ico{background:#0b1f52;}
.pec-chat-item.portal .pec-chat-ico{background:#ffc107;color:#0b1f52;}
@media (max-width:560px){
  .pec-chat{right:14px;bottom:14px;}
  .pec-chat-label{display:none;}
  .pec-chat-toggle{width:58px;padding:0;justify-content:center;}
}

/* ============ Enquiry form (popup + inline) ============ */
body.pec-enq-lock{overflow:hidden;}
.pec-enq-overlay{
  position:fixed;inset:0;z-index:1000;background:rgba(8,18,48,.6);display:flex;align-items:center;justify-content:center;
  padding:16px;opacity:0;transition:opacity .2s;
}
.pec-enq-overlay.open{opacity:1;}
.pec-enq-modal{
  position:relative;width:100%;max-width:560px;max-height:calc(100vh - 32px);overflow-y:auto;background:#fff;border-radius:20px;
  box-shadow:0 30px 80px rgba(0,0,0,.35);transform:translateY(12px);transition:transform .2s;
}
.pec-enq-overlay.open .pec-enq-modal{transform:none;}
.pec-enq-close{
  position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:10px;border:none;cursor:pointer;
  background:rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;
}
.pec-enq-close:hover{background:rgba(255,255,255,.28);}
.pec-enq-close:focus-visible{outline:3px solid #ffc107;}
.pec-enq-head{background:var(--grad,linear-gradient(135deg,#0b1f52,#1a3fa0));color:#fff;padding:24px 56px 20px 24px;border-radius:20px 20px 0 0;}
.pec-enq-eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#ffc107;margin-bottom:6px;}
.pec-enq-head h2{font-size:22px;font-weight:900;line-height:1.2;margin:0 0 6px;color:#fff;}
.pec-enq-head p{font-size:14px;line-height:1.5;color:rgba(255,255,255,.85);margin:0;}
.pec-enq-body{padding:20px 24px 22px;}
.pec-enq-inline{max-width:820px;margin:0 auto;background:#fff;border:1px solid #e2e6f0;border-radius:18px;padding:26px;box-shadow:0 12px 32px rgba(11,31,82,.07);}
.pec-enq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;}
.pec-enq-wide{grid-column:1 / -1;}
.pec-enq-field label{display:block;font-size:13px;font-weight:700;color:#0b1f52;margin-bottom:5px;}
.pec-enq-field label span[aria-hidden]{color:#c81e1e;}
.pec-opt{font-weight:500;color:#5b6480;}
.pec-enq-field input,.pec-enq-field select,.pec-enq-field textarea{
  width:100%;box-sizing:border-box;padding:11px 12px;border:1.5px solid #d4dbea;border-radius:10px;
  font-family:inherit;font-size:15px;line-height:1.4;color:#141a33;background:#fff;
}
.pec-enq-field textarea{resize:vertical;}
.pec-enq-field input:focus,.pec-enq-field select:focus,.pec-enq-field textarea:focus{outline:none;border-color:#2a5bd7;box-shadow:0 0 0 3px rgba(42,91,215,.15);}
.pec-enq-field [aria-invalid="true"]{border-color:#c81e1e;box-shadow:0 0 0 3px rgba(200,30,30,.12);}
.pec-enq-error{margin-top:12px;background:#fff1f2;color:#b91c1c;font-size:13.5px;font-weight:600;padding:10px 12px;border-radius:10px;}
.pec-enq-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;}
.pec-enq-btn{
  flex:1 1 180px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;
  border-radius:12px;border:none;cursor:pointer;font-family:inherit;font-size:15px;font-weight:800;line-height:1;text-decoration:none;transition:transform .15s,filter .15s;
}
.pec-enq-btn:hover{transform:translateY(-1px);filter:brightness(1.05);}
.pec-enq-btn:focus-visible{outline:3px solid #ffc107;outline-offset:2px;}
.pec-enq-btn.primary{background:var(--grad,#1a3fa0);color:#fff;}
.pec-enq-btn.whatsapp{background:#1da851;color:#fff;}
.pec-enq-note{margin:14px 0 0;font-size:13.5px;color:#5b6480;text-align:center;}
.pec-enq-note a{color:#1a3fa0;font-weight:700;}
.pec-enq-done{text-align:center;padding:12px 4px 4px;}
.pec-enq-done-ico{width:58px;height:58px;border-radius:999px;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;}
.pec-enq-done h3{font-size:21px;font-weight:900;color:#0b1f52;margin:0 0 6px;outline:none;}
.pec-enq-done p{font-size:14.5px;color:#5b6480;line-height:1.55;margin:0 0 16px;}
.pec-enq-done .pec-enq-btn{display:inline-flex;max-width:320px;}
@media (max-width:560px){
  .pec-enq-grid{grid-template-columns:1fr;}
  .pec-enq-inline{padding:18px;}
  .pec-enq-head{padding:20px 52px 16px 18px;}
  .pec-enq-body{padding:16px 18px 18px;}
}
@media (prefers-reduced-motion:reduce){ .pec-enq-overlay,.pec-enq-modal,.pec-chat-menu{transition:none;animation:none;} }
@media print{ .pec-chat,.pec-enq-overlay{display:none !important;} }

/* ============ Header: book appointment + login menu ============ */
.nav-login{position:relative;}
.nav-login summary{
  list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
  background:var(--grad);color:#fff;font-size:13.5px;font-weight:800;padding:11px 14px;border-radius:10px;
  box-shadow:0 6px 16px rgba(26,63,160,.3);user-select:none;
}
.nav-login summary::-webkit-details-marker{display:none;}
.nav-login summary:focus-visible{outline:3px solid var(--yellow,#ffc107);outline-offset:2px;}
.nav-login[open] summary svg{transform:rotate(180deg);}
.nav-login-menu{
  position:absolute;right:0;top:calc(100% + 8px);z-index:120;width:240px;background:#fff;border-radius:14px;
  border:1px solid #e2e6f0;box-shadow:0 18px 44px rgba(11,31,82,.2);padding:8px;display:flex;flex-direction:column;gap:2px;
}
.nav-login-menu a{display:block;padding:10px 12px;border-radius:10px;text-decoration:none;color:#141a33;}
.nav-login-menu a:hover,.nav-login-menu a:focus-visible{background:#f3f6fd;outline:none;}
.nav-login-menu b{display:block;font-size:14px;font-weight:700;color:#0b1f52;}
.nav-login-menu span{display:block;font-size:12.5px;color:#5b6480;margin-top:1px;}
.mobile-login{text-align:center;font-weight:700!important;}
.pec-chat-item.book .pec-chat-ico{background:#e8590c;}

/* ============ Home: appointment + student portal ============ */
.promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1080px;margin:0 auto;}
.promo-card{background:#fff;border:1px solid #e2e6f0;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 14px 34px rgba(11,31,82,.08);}
.promo-card picture,.promo-card img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;}
.promo-media{display:block;}
.promo-body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:10px;flex-grow:1;}
.promo-body h3{font-size:21px;font-weight:900;color:#0b1f52;line-height:1.25;margin:0;}
.promo-body p{font-size:15px;line-height:1.6;color:#5b6480;margin:0;}
.promo-body .btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:8px;}
.promo-body .btn-blue{background:var(--grad);color:#fff;}
.promo-small{font-size:13.5px;color:#5b6480;}
.promo-small a{color:#1a3fa0;font-weight:700;}
@media (max-width:820px){ .promo-grid{grid-template-columns:1fr;max-width:520px;} }
/* Medium screens: tighten the menu so Book + Login fit on one line */
@media (min-width:981px) and (max-width:1240px){
  .nav-links a{padding-left:9px !important;padding-right:9px !important;font-size:13.5px !important;}
  .nav-portal,.nav-login summary{padding:10px 11px;font-size:13px;}
  .nav-actions{gap:6px;}
}
@media (min-width:981px) and (max-width:1080px){
  .nav-links{gap:0 !important;}
  .nav-links a{padding-left:7px !important;padding-right:7px !important;font-size:13px !important;}
}

/* ============ Portal widgets (embed.js) ============ */
.pec-enq-frame{padding:0 !important;}
.pec-enq-frame iframe{display:block;width:100%;height:min(680px,calc(100vh - 230px));border:0;background:#fff;}
.pec-enq-frame .pec-enq-note{padding:10px 18px 16px;margin:0;}
.pec-widget{max-width:860px;margin:0 auto;background:#fff;border:1px solid #e2e6f0;border-radius:18px;padding:18px;box-shadow:0 12px 32px rgba(11,31,82,.07);min-height:120px;}
.pec-widget.narrow{max-width:440px;}
.pec-widget-fallback{text-align:center;font-size:13.5px;color:#5b6480;margin-top:12px;}
.pec-widget-fallback a{color:#1a3fa0;font-weight:700;}
.portal-split{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:28px;align-items:start;max-width:1080px;margin:0 auto;}
.portal-split .promo-card{box-shadow:none;}
@media (max-width:900px){ .portal-split{grid-template-columns:1fr;max-width:520px;} }
/* The portal's chat bubble sits bottom-right, so WhatsApp moves to bottom-left */
.float-wa{left:22px !important;right:auto !important;}
body.cms-open .float-wa{left:22px !important;}
