/* LSF CMS — public contact form + small fixes. Accent color comes from --cms-accent (set per brand). */
.cms-contact-section{padding:90px 0;background:linear-gradient(180deg,#f6f8fc 0%,#fff 100%);position:relative}
.cms-contact-card{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;background:#fff;border-radius:28px;
  padding:48px;box-shadow:0 24px 60px -28px rgba(15,30,60,.28);border:1px solid rgba(15,30,60,.06);position:relative;overflow:hidden}
.cms-contact-card::before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--cms-accent,#073b78)}
.cms-contact-kicker{display:inline-block;font-size:13px;letter-spacing:.14em;font-weight:700;color:var(--cms-accent,#073b78);margin-bottom:12px}
.cms-contact-intro h2{font-size:clamp(28px,3.4vw,40px);line-height:1.25;margin:0 0 14px}
.cms-contact-intro p{color:#5a6475;margin:0 0 22px;font-size:16px;line-height:1.75}
.cms-contact-points{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.cms-contact-points li{display:flex;align-items:center;gap:12px;font-weight:600;color:#1b2430}
.cms-contact-points i{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;
  background:color-mix(in srgb,var(--cms-accent,#073b78) 12%,#fff);color:var(--cms-accent,#073b78)}
.cms-contact-form{display:grid;gap:16px}
.cms-field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cms-field{display:grid;gap:6px;margin:0}
.cms-field>span{font-size:14px;font-weight:600;color:#3a4252}
.cms-field input,.cms-field select,.cms-field textarea{width:100%;border:1.5px solid #dfe4ec;border-radius:14px;padding:12px 14px;
  font:inherit;font-size:15px;background:#fbfcfe;color:#1b2430;transition:border-color .2s,box-shadow .2s;min-height:48px}
.cms-field textarea{resize:vertical;min-height:120px}
.cms-field input:focus,.cms-field select:focus,.cms-field textarea:focus{outline:none;border-color:var(--cms-accent,#073b78);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--cms-accent,#073b78) 15%,transparent);background:#fff}
.cms-contact-form .cms-submit{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;padding:14px 30px;
  background:var(--cms-accent,#073b78)!important;color:#fff!important;font-weight:700;font-size:16px;cursor:pointer;justify-self:start;box-shadow:none;
  transition:transform .15s,filter .2s;min-height:50px}
.cms-contact-form .cms-submit:hover{filter:brightness(1.08);transform:translateY(-1px)}
.cms-submit[disabled]{opacity:.6;cursor:wait;transform:none}
.cms-form-status{margin:0;font-weight:600;min-height:1.4em}
.cms-form-status.is-ok{color:#13824a}
.cms-form-status.is-error{color:#c62828}
.cms-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
@media (max-width:991px){.cms-contact-card{grid-template-columns:1fr;padding:32px 24px;gap:28px}}
@media (max-width:575px){.cms-field-row{grid-template-columns:1fr}.cms-contact-section{padding:60px 0}.cms-submit{width:100%}}

/* ================================================================ standard group menu (all brands) */
.cms-std-menu>li.cms-dd{position:relative}
.cms-std-menu .cms-caret{display:inline-block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-3px);margin-left:8px;transition:transform .2s}
.cms-std-menu .cms-dd-toggle::after,.cms-std-menu .cms-dd-toggle::before{display:none!important}
.cms-dd-menu{display:none!important;position:absolute!important;top:100%!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;
  z-index:1200!important;list-style:none!important;margin:14px 0 0!important;padding:10px!important;background:#fff!important;border-radius:22px!important;
  box-shadow:0 26px 60px -22px rgba(7,30,70,.38)!important;min-width:250px;text-align:left!important;opacity:1!important;visibility:visible!important;
  max-height:calc(100vh - 110px);overflow:auto;float:none!important;height:auto!important}
.cms-dd-menu::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.cms-dd.is-open>.cms-dd-menu{display:block!important}
@media (min-width:992px) and (hover:hover){.cms-dd:hover>.cms-dd-menu,.cms-dd:focus-within>.cms-dd-menu{display:block!important}}
.cms-dd-menu li{display:block!important;margin:0!important;padding:0!important;border:0!important;float:none!important;width:auto!important;background:none!important}
.cms-dd-menu li::before,.cms-dd-menu li::after,.cms-dd-menu a::before,.cms-dd-menu a::after{display:none!important}
.cms-about-menu a{display:block!important;padding:11px 16px!important;border-radius:12px;color:#0d2b55!important;font-size:15px!important;font-weight:600!important;
  line-height:1.4!important;text-transform:none!important;letter-spacing:0!important;white-space:nowrap;background:none!important}
.cms-about-menu a:hover,.cms-about-menu a:focus{background:#f1f6fe!important;color:#073b78!important}
.cms-brands-menu{width:420px;max-width:92vw;padding:18px 22px 22px!important;border-top:4px solid #e41e2b!important}
.cms-brands-menu .cms-brands-head{display:flex!important;align-items:baseline;gap:18px;padding:4px 4px 14px!important;margin-bottom:14px!important;border-bottom:1px solid #e3e9f2!important}
.cms-brands-head span{color:#e41e2b;font-size:13px;font-weight:800;letter-spacing:.22em}
.cms-brands-head strong{color:#0d2b55;font-size:26px;font-weight:800;line-height:1}
.cms-brands-menu .cms-brand-item{margin:0 0 10px!important}
.cms-brands-menu .cms-brand-item:last-child{margin-bottom:0!important}
.cms-brand-item a{display:flex!important;align-items:center;gap:18px;padding:12px 18px!important;border:1px solid #d9e5f4;border-radius:14px;background:#f3f8ff!important;
  text-decoration:none!important;transition:border-color .15s,transform .15s;min-height:68px}
.cms-brand-item a:hover,.cms-brand-item a:focus{border-color:#073b78;transform:translateY(-1px)}
.cms-brand-item.is-current a{border-color:#e41e2b;background:#fff6f6!important}
.cms-brand-logo{flex:0 0 140px;height:44px;display:flex;align-items:center;justify-content:center}
.cms-brand-logo img{max-width:140px!important;max-height:44px!important;width:auto!important;height:auto!important;object-fit:contain;margin:0!important}
.cms-brand-label{color:#0d2b55!important;font-size:11px!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase;line-height:1.3!important}
@media (max-width:991px){
  .cms-dd-menu{position:static!important;transform:none!important;width:auto!important;min-width:0;max-width:none;box-shadow:none!important;
    margin:6px 0 12px!important;max-height:none;border:1px solid #e3e9f2!important;border-radius:14px!important}
  .cms-brands-menu{border-top:3px solid #e41e2b!important;padding:12px!important}
  .cms-brand-item a{gap:12px;padding:10px 12px!important;min-height:56px}
  .cms-brand-logo{flex-basis:96px;height:34px}.cms-brand-logo img{max-width:96px!important;max-height:34px!important}
  .cms-dd.is-open>.cms-dd-toggle .cms-caret{transform:rotate(225deg) translateY(-2px)}
}

/* ================================================================ standalone header (Pingu's English) */
.cms-nav{position:sticky;top:0;z-index:1100;background:var(--cms-nav-bg,#A92793);color:#fff;box-shadow:0 8px 24px -16px rgba(0,0,0,.35)}
.cms-nav-inner{max-width:1280px;margin:0 auto;padding:8px max(20px,env(safe-area-inset-left,0px));display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative}
.cms-nav-logo{display:flex;align-items:center;text-decoration:none}
.cms-nav-logo-mark{width:68px;height:68px;object-fit:contain;position:relative;z-index:1}
.cms-nav-logo-text{width:118px;height:56px;object-fit:contain;margin-left:-10px}
.cms-nav .cms-nav-menu{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0}
.cms-nav .cms-nav-menu>li>a{display:inline-flex;align-items:center;color:#fff;text-decoration:none;font-size:15px;letter-spacing:.03em;padding:10px 12px;border-radius:999px;transition:background .2s}
.cms-nav .cms-nav-menu>li>a:hover{background:rgba(255,255,255,.16)}
.cms-nav-burger{display:none;background:rgba(255,255,255,.18);border:0;border-radius:12px;width:46px;height:46px;padding:12px;cursor:pointer;flex-direction:column;justify-content:space-between}
.cms-nav-burger span{display:block;height:3px;border-radius:2px;background:#fff}
@media (max-width:991px){
  .cms-nav-burger{display:flex}
  .cms-nav .cms-nav-menu{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:2px;background:var(--cms-nav-bg,#A92793);
    padding:10px 16px 18px;max-height:calc(100vh - 84px);overflow:auto;box-shadow:0 20px 30px -20px rgba(0,0,0,.4)}
  .cms-nav.is-open .cms-nav-menu{display:flex}
  .cms-nav .cms-nav-menu>li>a{width:100%;justify-content:space-between;font-size:17px;padding:12px 14px}
  .cms-nav-logo-mark{width:54px;height:54px}.cms-nav-logo-text{width:96px;height:46px}
}
.pingu-page .cms-contact-section{--cms-accent:#A92793}
.pg-tab[aria-selected="true"].pg-tab--tots{border-color:#f97316!important;background:rgba(255,247,237,.8)!important;box-shadow:0 10px 24px -12px rgba(249,115,22,.5)}
.pg-tab[aria-selected="true"].pg-tab--elt{border-color:#079FC3!important;background:rgba(7,159,195,.06)!important;box-shadow:0 10px 24px -12px rgba(7,159,195,.5)}
[data-cms-panel][hidden]{display:none!important}

/* ================================================================ Testimonials / Parents / CSR / Class Room sections */
.cms-wrap{max-width:1180px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.cms-extra{padding:90px 0;background:#fff;position:relative}
.cms-extra--parents,.cms-extra--classroom{background:linear-gradient(180deg,#f5f8fd 0%,#fff 100%)}
.cms-extra-head{max-width:720px;margin:0 auto 42px;text-align:center}
.cms-kicker{display:inline-block;color:var(--cms-accent,#073b78);font-weight:800;letter-spacing:.18em;font-size:13px;margin-bottom:10px}
.cms-extra-head h2{font-size:clamp(28px,3.4vw,42px);line-height:1.3;margin:0 0 12px;text-wrap:balance}
.cms-extra-head p{color:#5a6475;font-size:17px;line-height:1.7;margin:0}
.cms-grid{display:grid;gap:22px}
.cms-grid--3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.cms-card{background:#fff;border:1px solid #e5eaf2;border-radius:22px;padding:26px;margin:0;box-shadow:0 20px 44px -34px rgba(15,30,60,.45);position:relative}
.cms-quote blockquote{margin:0 0 20px;padding:30px 0 0;border:0;font-size:17px;line-height:1.8;color:#2a3344;position:relative;font-style:normal}
.cms-quote blockquote::before{content:"\201C";position:absolute;top:-12px;left:-2px;font-size:70px;line-height:1;color:var(--cms-accent,#073b78);font-family:Georgia,serif}
.cms-quote figcaption{display:flex;align-items:center;gap:12px}
.cms-avatar{width:50px!important;height:50px!important;border-radius:50%;object-fit:cover;background:#eef2f8;flex:none}
.cms-quote strong{display:block;color:#14213d;font-size:15px}
.cms-quote small{display:block;color:#6a7488;font-size:13px}
.cms-info{display:flex;flex-direction:column;gap:8px}
.cms-info h3{font-size:19px;margin:6px 0 0;line-height:1.4}
.cms-info p{margin:0;color:#5a6475;line-height:1.7}
.cms-info a,.cms-photo a{color:var(--cms-accent,#073b78);font-weight:700;text-decoration:none;margin-top:auto}
.cms-info a:hover{text-decoration:underline}
.cms-info-ico{width:50px;height:50px;border-radius:16px;background:color-mix(in srgb,var(--cms-accent,#073b78) 12%,#fff);position:relative}
.cms-info-ico::after,.cms-ico{content:"";position:absolute;inset:13px;background:var(--cms-accent,#073b78);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.cms-ico{position:relative;inset:auto;display:inline-block;width:20px;height:20px;vertical-align:middle}
.cms-ico-cal{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18'/%3E%3C/svg%3E")}
.cms-ico-pin{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 21s-7-6.3-7-12a7 7 0 0 1 14 0c0 5.7-7 12-7 12z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E")}
.cms-ico-phone{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E")}
.cms-ico-mail{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E")}
.cms-contact-points .cms-ico{width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--cms-accent,#073b78) 12%,#fff);-webkit-mask:none;mask:none}
.cms-contact-points .cms-ico::after{content:"";position:absolute;inset:10px;background:var(--cms-accent,#073b78);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.cms-faq-list{display:grid;gap:12px;max-width:820px;margin:34px auto 0}
.cms-faq{padding:18px 22px}
.cms-faq summary{cursor:pointer;font-weight:700;font-size:17px;color:#14213d;list-style:none;display:flex;justify-content:space-between;gap:12px}
.cms-faq summary::-webkit-details-marker{display:none}
.cms-faq summary::after{content:"+";color:var(--cms-accent,#073b78);font-size:22px;line-height:1}
.cms-faq[open] summary::after{content:"\2212"}
.cms-faq p{margin:12px 0 0;color:#5a6475;line-height:1.7}
.cms-post{padding:0;overflow:hidden}
.cms-post img,.cms-photo img{display:block;width:100%!important;aspect-ratio:16/10;object-fit:cover;background:#eef2f8;max-width:100%}
.cms-post-body{padding:20px 22px 24px}
.cms-post small{color:var(--cms-accent,#073b78);font-weight:700;font-size:13px}
.cms-post h3{font-size:19px;margin:6px 0 8px;line-height:1.4}
.cms-post p{margin:0;color:#5a6475;line-height:1.7}
.cms-photo{padding:0;overflow:hidden}
.cms-photo img{aspect-ratio:4/3}
.cms-photo figcaption{position:absolute;left:14px;bottom:14px;background:rgba(255,255,255,.92);color:#14213d;font-weight:700;font-size:14px;padding:6px 14px;border-radius:999px}
.cms-extra-cta{text-align:center;margin-top:34px}
.cms-btn{display:inline-flex;align-items:center;gap:8px;background:var(--cms-accent,#073b78);color:#fff!important;padding:13px 28px;border-radius:999px;font-weight:700;text-decoration:none!important;border:2px solid var(--cms-accent,#073b78);transition:filter .2s,transform .15s}
.cms-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
.cms-btn--ghost{background:transparent;color:var(--cms-accent,#073b78)!important}
.cms-draft{display:none!important}
@media (max-width:575px){.cms-extra{padding:60px 0}.cms-card{padding:22px}}
/* template CSS hides <img> inside navs — force brand logos visible */
.cms-brands-menu .cms-brand-logo img{display:block!important;visibility:visible!important;opacity:1!important}
.cms-dd-menu{font-family:"Noto Sans Lao","Phetsarath OT",system-ui,-apple-system,"Segoe UI",sans-serif}
/* LBA stylesheet lists Times New Roman first; use its BoonHome face for the menu */
body.theme-style-three .cms-std-menu>li>a{font-family:BoonHome,"Noto Sans Lao",system-ui,sans-serif!important}

/* ================================================================ sliders (Testimonials / CSR) — any number of cards */
.cms-slider{position:relative}
.cms-slider-track,[data-cms-slider].cms-slider-track{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:24px!important;
  overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 4px 22px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.cms-slider-track::-webkit-scrollbar{display:none}
.cms-slider-track>*{flex:0 0 calc((100% - (var(--pv,3) - 1) * 24px) / var(--pv,3))!important;scroll-snap-align:start;min-width:0;max-width:none!important;margin:0!important}
.cms-slider-track>.cms-draft{display:none!important}
.cms-slider[data-cms-slider="3"]{--pv:3}
[data-cms-slider="1"]{--pv:1}
@media (max-width:991px){.cms-slider[data-cms-slider="3"]{--pv:2}}
@media (max-width:640px){.cms-slider[data-cms-slider="3"] .cms-slider-track>*{flex-basis:86%!important}}
.cms-slider-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:6px}
.cms-slider-nav[hidden]{display:none!important}
.cms-slider-btn{width:46px;height:46px;border-radius:50%;border:1.5px solid color-mix(in srgb,var(--cms-accent,#073b78) 35%,#fff);background:#fff;color:var(--cms-accent,#073b78);
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s,transform .15s;box-shadow:0 8px 20px -12px rgba(7,30,70,.35)}
.cms-slider-btn:hover:not(:disabled){background:var(--cms-accent,#073b78);color:#fff}
.cms-slider-btn:disabled{opacity:.35;cursor:default}
.cms-slider-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.cms-slider-dots{display:flex;gap:8px;align-items:center}
.cms-slider-dot{width:9px;height:9px;border-radius:99px;border:0;padding:0;background:color-mix(in srgb,var(--cms-accent,#073b78) 25%,#fff);cursor:pointer;transition:width .25s,background .25s}
.cms-slider-dot[aria-current="true"]{width:26px;background:var(--cms-accent,#073b78)}
.cms-slider-btn:focus-visible,.cms-slider-dot:focus-visible{outline:3px solid var(--cms-accent,#073b78);outline-offset:3px}
.pingu-page [data-cms-slider="1"] + .cms-slider-nav .cms-slider-btn{border-color:rgba(255,255,255,.6)}
.pingu-page .cms-slider-nav .cms-slider-dot{background:rgba(255,255,255,.45)}
.pingu-page .cms-slider-nav .cms-slider-dot[aria-current="true"]{background:#fff}
@media (prefers-reduced-motion:reduce){.cms-slider-track{scroll-behavior:auto}}
/* keep slider controls independent of each template's global button/img styles */
.cms-slider-nav .cms-slider-btn{background:#fff!important;color:var(--cms-accent,#073b78)!important;border:1.5px solid color-mix(in srgb,var(--cms-accent,#073b78) 35%,#fff)!important;
  padding:0!important;margin:0!important;min-width:0!important;line-height:1!important;font-size:0!important;text-indent:0!important}
.cms-slider-nav .cms-slider-btn::before,.cms-slider-nav .cms-slider-btn::after{display:none!important}
.cms-slider-nav .cms-slider-btn:hover:not(:disabled){background:var(--cms-accent,#073b78)!important;color:#fff!important}
.cms-slider-nav .cms-slider-btn:disabled{opacity:.45!important;background:#fff!important}
.cms-slider-nav .cms-slider-btn svg{stroke:currentColor!important;fill:none!important}
.cms-slider-nav .cms-slider-dot{padding:0!important;margin:0!important;min-width:0!important;border:0!important;box-shadow:none!important}
.cms-slider-nav .cms-slider-dot::before,.cms-slider-nav .cms-slider-dot::after{display:none!important}
.cms-post>img{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;max-width:100%!important}

/* ---- Site-wide typeface: Noto Sans Lao + Noto Sans (overrides each template's fonts; icon <i> elements keep their icon fonts) */
html:root:not(.cms-no-font) body,
html:root:not(.cms-no-font) body :is(h1,h2,h3,h4,h5,h6,p,a,span,li,ul,ol,dl,dt,dd,td,th,label,input,textarea,select,option,button,blockquote,q,cite,
  strong,b,em,small,del,ins,s,u,abbr,div,section,article,header,footer,nav,figcaption,address,time,mark,sup,sub,legend,summary,font){font-family:var(--cms-font)!important}
html body :is(h1,h2,h3,h4,h5,h6,p,li,dd,blockquote):lang(lo){line-height:1.7}
html body :is(h1,h2,h3):lang(lo){line-height:1.45}

/* ---- Language switcher (Google Translate) — in the main menu + floating fallback.
   Strong selectors + !important so the 8 different templates' nav/button styles can't bend it. */
:root:root .cms-lang{position:relative!important;font-size:14px!important;line-height:1!important;list-style:none!important;width:auto!important;height:auto!important;
  top:auto;transform:none!important;float:none!important;background:none!important;border:0!important;box-shadow:none!important}
:root:root .cms-lang button{all:unset;box-sizing:border-box!important;cursor:pointer!important;font-family:var(--cms-font)!important;position:static!important;
  width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;margin:0!important;transform:none!important;float:none!important;
  text-indent:0!important;text-transform:none!important;letter-spacing:normal!important;box-shadow:none!important;opacity:1!important;visibility:visible!important}
:root:root .cms-lang button::before,:root:root .cms-lang button::after{display:none!important;content:none!important}
:root:root .cms-lang .cms-lang-btn{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:7px 12px!important;border-radius:999px!important;
  font-weight:600!important;font-size:14px!important;line-height:1.2!important;color:inherit!important;background:transparent!important;
  border:1.5px solid color-mix(in srgb,currentColor 35%,transparent)!important;white-space:nowrap!important}
:root:root .cms-lang .cms-lang-btn:hover,:root:root .cms-lang.is-open .cms-lang-btn{border-color:var(--cms-accent,#073b78)!important}
:root:root .cms-lang .cms-lang-btn svg{display:block!important;width:17px!important;height:17px!important;flex:none!important;position:static!important}
:root:root .cms-lang .cms-lang-btn span{display:inline!important;position:static!important;font:inherit!important;color:inherit!important;background:none!important;padding:0!important;margin:0!important}
:root:root .cms-lang .cms-lang-caret{font-size:10px!important;opacity:.7}
:root:root .cms-lang.is-busy .cms-lang-btn{opacity:.6!important}
:root:root .cms-lang .cms-lang-list{position:absolute!important;right:0;left:auto;top:calc(100% + 8px);bottom:auto;z-index:2147483001!important;display:block!important;
  min-width:190px!important;width:max-content!important;max-height:min(60vh,420px)!important;overflow:auto!important;margin:0!important;padding:6px!important;
  list-style:none!important;background:#fff!important;border-radius:14px!important;box-shadow:0 14px 40px rgba(0,0,0,.18)!important;border:1px solid rgba(0,0,0,.08)!important;
  text-align:left!important;transform:none!important;opacity:1!important;visibility:visible!important}
:root:root .cms-lang .cms-lang-list[hidden]{display:none!important}
:root:root .cms-lang .cms-lang-list li{display:block!important;margin:0!important;padding:0!important;list-style:none!important;border:0!important;float:none!important;width:auto!important;height:auto!important;background:none!important}
:root:root .cms-lang .cms-lang-list li::before,:root:root .cms-lang .cms-lang-list li::after{display:none!important;content:none!important}
:root:root .cms-lang .cms-lang-list button{display:block!important;width:100%!important;border:0!important;outline:0;text-align:left!important;padding:10px 12px!important;border-radius:9px!important;color:#1d2433!important;
  background:transparent!important;font-size:14px!important;font-weight:500!important;line-height:1.3!important;white-space:nowrap!important}
:root:root .cms-lang .cms-lang-list button:hover{background:#f1f4f8!important}
:root:root .cms-lang .cms-lang-list button[aria-selected="true"]{background:var(--cms-accent,#073b78)!important;color:#fff!important;font-weight:700!important}
:root:root .cms-lang button:focus-visible{outline:2px solid var(--cms-accent,#073b78)!important;outline-offset:2px!important}
/* in the menu */
:root:root li.cms-lang-menu{display:inline-flex!important;align-items:center!important;vertical-align:middle!important;margin:0 0 0 10px!important;padding:0!important}
:root:root li.cms-lang-menu::before,:root:root li.cms-lang-menu::after{display:none!important;content:none!important}
/* floating (phones / when the header is scrolled away) */
:root:root .cms-lang-float{position:fixed!important;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:2147483000!important}
:root:root .cms-lang-float .cms-lang-btn{background:#fff!important;color:#1d2433!important;border:1px solid rgba(0,0,0,.1)!important;box-shadow:0 6px 24px rgba(0,0,0,.18)!important;padding:10px 14px!important}
:root:root .cms-lang-float .cms-lang-btn svg{color:var(--cms-accent,#073b78)!important}
:root:root .cms-lang-float .cms-lang-list{top:auto;bottom:calc(100% + 8px);left:0;right:auto}
:root:root .cms-lang-float.is-hidden{display:none!important}
@media print{.cms-lang{display:none!important}}
#cms-gt,.skiptranslate>iframe,.goog-te-banner-frame,#goog-gt-tt,.goog-te-balloon-frame,.goog-tooltip,.goog-te-spinner-pos,
[class^="VIpgJd-ZVi9od"],[class*=" VIpgJd-ZVi9od"]{display:none!important;visibility:hidden!important}
html body{top:0!important}
.goog-text-highlight{background:none!important;box-shadow:none!important}
font[style*="vertical-align"]{background:none!important;box-shadow:none!important}

/* ---- Unified, balanced footer (About | Menu | Our brands | Contact) */
.cms-footer.default-padding{padding-top:72px!important;padding-bottom:48px!important}
.cms-footer .cms-footer-row{row-gap:36px}
.cms-footer .cms-f-col{margin-top:0!important;margin-bottom:0!important}
.cms-footer .f-item{margin:0!important;padding:0!important}
.cms-footer .footer-logo{margin:0 0 18px!important}
.cms-footer .footer-logo img{max-height:64px!important;width:auto!important;max-width:220px!important}
.cms-footer .f-item.about p{margin:0 0 20px!important;max-width:340px;line-height:1.75!important;opacity:.9}
.cms-footer .widget-title{font-size:18px!important;font-weight:700!important;margin:6px 0 20px!important;padding:0!important;line-height:1.3!important}
.cms-footer .widget-title::before,.cms-footer .widget-title::after{display:none!important}
.cms-footer .f-item.link ul,.cms-footer .cms-f-contact{list-style:none!important;margin:0!important;padding:0!important}
.cms-footer .f-item.link ul li{margin:0 0 11px!important;padding:0!important;line-height:1.5!important;border:0!important}
.cms-footer .f-item.link ul li a{font-size:15px!important;opacity:.88;transition:opacity .2s,color .2s}
.cms-footer .f-item.link ul li a:hover{opacity:1}
.cms-footer .f-item.link ul li::before,.cms-footer .f-item.link ul li a::before,.cms-footer .f-item.link ul li a::after{display:none!important}
.cms-footer .f-item.link ul li a{padding:0!important;margin:0!important}
.cms-footer .cms-f-contact li{display:flex!important;gap:12px;align-items:flex-start;margin:0 0 14px!important;padding:0!important;font-size:15px;line-height:1.6;border:0!important}
.cms-footer .cms-f-contact li::before{display:none!important}
.cms-footer .cms-f-contact i{flex:none;width:18px;margin-top:4px;text-align:center;color:var(--cms-accent,#073b78);font-size:15px}
.cms-footer .cms-f-contact a{color:inherit!important;word-break:break-word}
.cms-footer .cms-f-social{display:flex!important;flex-wrap:wrap;gap:10px;list-style:none!important;margin:0!important;padding:0!important}
.cms-footer .cms-f-social li{margin:0!important;padding:0!important;border:0!important;float:none!important}
.cms-footer .cms-f-social li::before{display:none!important}
.cms-footer .cms-f-social a{display:inline-flex!important;align-items:center;justify-content:center;width:40px!important;height:40px!important;line-height:1!important;
  border-radius:50%!important;border:1px solid color-mix(in srgb,currentColor 30%,transparent)!important;background:transparent!important;font-size:15px;margin:0!important;padding:0!important;transition:background .2s,color .2s,border-color .2s}
.cms-footer .cms-f-social a:hover{background:var(--cms-accent,#073b78)!important;border-color:var(--cms-accent,#073b78)!important;color:#fff!important}
.cms-footer .cms-f-social a i{margin:0!important}
@media (max-width:991px){.cms-footer.default-padding{padding-top:56px!important;padding-bottom:36px!important}}
@media (max-width:767px){.cms-footer .cms-footer-row{row-gap:30px}.cms-footer .f-item.about p{max-width:none}}
html body footer:has(.cms-footer){display:block!important}
.cms-footer .cms-f-social a{color:inherit!important}
footer.text-light .cms-footer .cms-f-contact i,footer.bg-dark .cms-footer .cms-f-contact i{color:inherit!important;opacity:.75}
@media (max-width:767px){.cms-footer .cms-f-col.col-6 .f-item.link ul li a{font-size:14px!important}.cms-footer .footer-bottom p{font-size:13px}}
@media (max-width:991px){html body footer:has(.cms-footer){padding-bottom:64px!important}}
.cms-wa-note{display:flex!important;align-items:flex-start;gap:8px;margin:12px 0 0!important;font-size:13px!important;line-height:1.5!important;color:#25a244!important;text-align:left}
.cms-wa-note svg{width:18px;height:18px;flex:none;margin-top:1px}

/* ---- set in the editor: hidden elements and per-device visibility */
.cms-off{display:none!important}
@media (max-width:767px){.cms-hide-mobile{display:none!important}}
@media (min-width:768px){.cms-hide-desktop{display:none!important}}
