/* =========================================================
   CroissanceNow Header & Footer (all rules scoped to .cnhf)
   ========================================================= */
.cnhf{--ink:#1B1F3B;--ink-2:#4A4F6A;--muted:#7C8098;--line:#EFE6D8;--bg:#FFFCF7;--bg-2:#FFF4E6;
  --accent:#F2811D;--accent-d:#D9650A;--accent-2:#FFB347;--accent-soft:#FFE8CF;--logo:#E8612C;--blue:#3B5BDB;
  --shadow:0 20px 50px -20px rgba(27,31,59,.22);--ease:cubic-bezier(.2,.8,.2,1);
  font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif!important;-webkit-font-smoothing:antialiased;box-sizing:border-box;text-align:left}
.cnhf *,.cnhf *::before,.cnhf *::after{box-sizing:border-box;font-family:inherit;letter-spacing:normal;text-transform:none;text-shadow:none}
.cnhf a{text-decoration:none!important;box-shadow:none!important}
.cnhf ul{list-style:none!important;margin:0!important;padding:0!important}
.cnhf li{list-style:none!important;margin:0!important;padding:0!important}
.cnhf li::before,.cnhf li::marker{content:none!important}
.cnhf p{margin:0}
.cnhf svg{flex:none;display:block}
.cnhf button{font:inherit;background:none;border:0;cursor:pointer;padding:0;margin:0;color:inherit;box-shadow:none;text-transform:none;min-height:0;line-height:1}
.cnhf-container{width:min(1240px,100% - 40px);margin-inline:auto}

/* ---------- Logo ---------- */
.cnhf-logo{display:inline-flex;align-items:center;flex:none}
.cnhf-logo img{height:40px;width:auto}
.cnhf-wordmark{font-family:'Montserrat','Plus Jakarta Sans',sans-serif!important;font-weight:700;font-size:1.72rem;line-height:1;color:var(--logo)!important;letter-spacing:-.01em!important;position:relative;transition:transform .4s var(--ease)}
.cnhf-wordmark::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--accent),var(--accent-2));transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.cnhf-logo:hover .cnhf-wordmark::after{transform:scaleX(1)}

/* ---------- Top bar ---------- */
.cnhf-top-wrap{position:relative;z-index:9990}
.cnhf-topbar{background:var(--ink);color:rgba(255,255,255,.75);font-size:.82rem;line-height:1}
.cnhf-topbar .cnhf-container{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:40px}
.cnhf-top-note,.cnhf-top-links a{display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.78)!important;font-weight:500}
.cnhf-top-note svg,.cnhf-top-links svg{color:var(--accent-2)}
.cnhf-top-links{display:flex;gap:26px}
.cnhf-top-links a:hover{color:#fff!important}

/* ---------- Header ---------- */
.cnhf-header{position:sticky;top:0;z-index:9991;background:rgba(255,252,247,.92);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:box-shadow .35s,border-color .35s,background .35s}
body.admin-bar .cnhf-header{top:32px}
@media (max-width:782px){body.admin-bar .cnhf-header{top:46px}}
@media (max-width:600px){body.admin-bar .cnhf-header{top:0}}
.cnhf-header.is-stuck{background:rgba(255,255,255,.96);border-bottom-color:var(--line);box-shadow:0 10px 30px -18px rgba(27,31,59,.25)}
.cnhf-bar{display:flex;align-items:center;justify-content:space-between;gap:28px;height:86px;transition:height .35s var(--ease)}
.cnhf-header.is-stuck .cnhf-bar{height:72px}
.cnhf-nav{flex:1;display:flex;justify-content:center}
.cnhf-menu{display:flex;align-items:center;gap:4px}
.cnhf-item{position:relative}
.cnhf-item>a{display:inline-flex;align-items:center;gap:6px;padding:10px 14px!important;border-radius:99px;font-weight:600!important;font-size:.98rem!important;line-height:1.2!important;color:var(--ink)!important;transition:color .25s,background .25s}
.cnhf-item>a svg{color:var(--muted);transition:transform .3s var(--ease)}
.cnhf-item>a:hover,.cnhf-item:focus-within>a{color:var(--accent-d)!important;background:var(--accent-soft)}
.cnhf-item.is-current>a{color:var(--accent-d)!important}
.cnhf-item.is-current>a::after{content:"";position:absolute;left:50%;bottom:0;width:6px;height:6px;border-radius:50%;background:var(--accent);transform:translateX(-50%)}
.cnhf-item.has-drop:hover>a svg,.cnhf-item.has-drop.open>a svg{transform:rotate(180deg);color:var(--accent)}

/* dropdown */
.cnhf-drop{position:absolute;top:calc(100% + 14px);left:50%;width:560px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translate(-50%,10px);transition:opacity .25s,transform .3s var(--ease),visibility .25s;z-index:10}
.cnhf-drop::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.cnhf-item.has-drop:hover .cnhf-drop,.cnhf-item.has-drop:focus-within .cnhf-drop,.cnhf-item.has-drop.open .cnhf-drop{opacity:1;visibility:visible;transform:translate(-50%,0)}
.cnhf-drop-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.cnhf-drop-grid a{display:block;padding:12px 14px;border-radius:14px;transition:background .2s}
.cnhf-drop-grid a:hover{background:var(--bg-2)}
.cnhf-drop-grid b{display:block;font-size:.95rem!important;font-weight:700!important;color:var(--ink)!important;line-height:1.3}
.cnhf-drop-grid a:hover b{color:var(--accent-d)!important}
.cnhf-drop-grid small{display:block;font-size:.8rem!important;color:var(--muted)!important;margin-top:3px;line-height:1.35}
.cnhf-drop-all{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;padding:12px;border-radius:14px;background:var(--bg-2);font-weight:700!important;font-size:.9rem!important;color:var(--ink)!important;transition:.25s}
.cnhf-drop-all:hover{background:var(--accent);color:#fff!important}

/* CTA */
.cnhf-actions{display:flex;align-items:center;gap:12px}
.cnhf-cta{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:10px;padding:14px 26px!important;border-radius:99px;background:var(--accent);color:#fff!important;font-weight:700!important;font-size:.98rem!important;line-height:1!important;white-space:nowrap;box-shadow:0 14px 28px -14px rgba(242,129,29,.85)!important;transition:transform .35s var(--ease),background .3s}
.cnhf-cta::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:cnhf-shine 4.5s 2s infinite}
@keyframes cnhf-shine{0%{left:-60%}30%,100%{left:130%}}
.cnhf-cta:hover{background:var(--accent-d);transform:translateY(-2px)}
.cnhf-cta svg{animation:cnhf-ring 3s 1s infinite}
@keyframes cnhf-ring{0%,20%,100%{transform:rotate(0)}4%,12%{transform:rotate(-14deg)}8%,16%{transform:rotate(14deg)}}

/* burger */
.cnhf-burger{display:none;width:46px;height:46px;border-radius:14px!important;background:var(--bg-2)!important;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.cnhf-burger span{display:block;width:20px;height:2px;border-radius:2px;background:var(--ink);transition:.3s}

/* ---------- Mobile panel ---------- */
.cnhf-mobile{position:fixed;inset:0;z-index:99999;background:rgba(27,31,59,.45);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.cnhf-mobile.open{opacity:1;visibility:visible}
.cnhf-mobile-panel{position:absolute;top:0;right:0;bottom:0;width:min(400px,88vw);background:var(--bg);padding:22px 22px 30px;overflow-y:auto;transform:translateX(100%);transition:transform .4s var(--ease);display:flex;flex-direction:column;gap:18px}
.cnhf-mobile.open .cnhf-mobile-panel{transform:none}
.cnhf-mobile-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--line)}
.cnhf-close{width:44px;height:44px;border-radius:12px!important;background:var(--bg-2)!important;display:grid;place-items:center;color:var(--ink)!important}
.cnhf-mmenu>li{border-bottom:1px solid var(--line)!important}
.cnhf-mrow{display:flex;align-items:center;justify-content:space-between}
.cnhf-mrow a{flex:1;display:block;padding:15px 2px!important;font-weight:700!important;font-size:1.05rem!important;color:var(--ink)!important}
.cnhf-mmenu li.is-current>.cnhf-mrow a{color:var(--accent-d)!important}
.cnhf-mtoggle{width:40px;height:40px;border-radius:10px!important;display:grid;place-items:center;color:var(--muted)!important;transition:transform .3s}
.cnhf-mmenu li.open .cnhf-mtoggle{transform:rotate(180deg);color:var(--accent)!important}
.cnhf-msub{display:block!important;max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.cnhf-mmenu li.open .cnhf-msub{max-height:600px;padding-bottom:10px!important}
.cnhf-msub a{display:block;padding:9px 14px!important;margin-left:4px;border-left:2px solid var(--line);color:var(--ink-2)!important;font-weight:500!important;font-size:.95rem!important}
.cnhf-msub a:hover{color:var(--accent-d)!important;border-left-color:var(--accent)}
.cnhf-cta-block{justify-content:center;width:100%}
.cnhf-mcontact{display:grid;gap:10px}
.cnhf-mcontact a{display:flex;align-items:center;gap:10px;color:var(--ink-2)!important;font-weight:600;font-size:.92rem}
.cnhf-mcontact svg{color:var(--accent)}

/* ---------- Footer ---------- */
.cnhf-footer{position:relative;background:var(--ink);color:rgba(255,255,255,.72);padding:80px 0 0;overflow:hidden;margin:0!important;clear:both}
.cnhf-footer::before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;right:-200px;top:-280px;background:radial-gradient(circle,rgba(242,129,29,.28),transparent 65%);pointer-events:none}
.cnhf-footer::after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;left:-220px;bottom:-260px;background:radial-gradient(circle,rgba(59,91,219,.25),transparent 65%);pointer-events:none}
.cnhf-footer .cnhf-container{position:relative;z-index:1}
.cnhf-fgrid{display:grid;grid-template-columns:1.6fr 1.1fr .9fr 1.3fr;gap:56px;padding-bottom:56px}
.cnhf-fbrand p{font-size:.94rem!important;line-height:1.7!important;color:rgba(255,255,255,.66)!important;max-width:340px}
.cnhf-logo-light .cnhf-wordmark{color:#fff!important}
.cnhf-logo-light .cnhf-wordmark::before{content:"";position:absolute;right:-12px;top:-2px;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.cnhf-fbrand .cnhf-ftag{margin:12px 0 16px!important;font-size:.75rem!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--accent-2)!important}
.cnhf-social{display:flex;gap:10px;margin-top:22px}
.cnhf-social a{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:#fff!important;transition:.3s}
.cnhf-social a:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-3px)}
.cnhf-fhead{font-size:.8rem!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#fff!important;margin:0 0 20px!important;position:relative;padding-bottom:12px!important}
.cnhf-fhead::after{content:"";position:absolute;left:0;bottom:0;width:28px;height:2px;border-radius:2px;background:var(--accent)}
.cnhf-fcol li{margin:0 0 11px!important}
.cnhf-fcol li a{color:rgba(255,255,255,.7)!important;font-size:.94rem!important;font-weight:500;line-height:1.4!important;display:inline-flex;align-items:center;gap:0;transition:color .25s,transform .25s}
.cnhf-fcol li a::before{content:"";width:0;height:2px;margin-right:0;background:var(--accent);transition:width .25s,margin .25s}
.cnhf-fcol li a:hover{color:#fff!important}
.cnhf-fcol li a:hover::before{width:10px;margin-right:8px}
.cnhf-finfo{display:flex;align-items:center;gap:14px;padding:12px 14px;margin-bottom:10px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);transition:.3s}
a.cnhf-finfo:hover{border-color:var(--accent-2);transform:translateX(4px)}
.cnhf-finfo i{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:rgba(255,179,71,.12);color:var(--accent-2);font-style:normal;flex:none}
.cnhf-finfo span{display:flex;flex-direction:column;color:#fff!important;font-weight:700;font-size:.86rem!important;line-height:1.35;white-space:nowrap}
.cnhf-finfo small{font-size:.68rem!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5)!important}
.cnhf-fbottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:24px 0 28px;border-top:1px solid rgba(255,255,255,.1)}
.cnhf-fbottom p{font-size:.85rem!important;color:rgba(255,255,255,.55)!important}
.cnhf-flegal{display:flex;gap:22px}
.cnhf-flegal a{font-size:.85rem!important;color:rgba(255,255,255,.65)!important}
.cnhf-flegal a:hover{color:var(--accent-2)!important}
.cnhf-totop{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--accent);color:#fff!important;box-shadow:var(--shadow)!important;opacity:0;visibility:hidden;transform:translateY(14px);transition:.35s var(--ease);z-index:9980}
.cnhf-totop.show{opacity:1;visibility:visible;transform:none}
.cnhf-totop:hover{background:var(--accent-d)}
/* avoid two "back to top" buttons with page designs */
body.cnhf-on .to-top,body.cnhf-on #toTop{display:none!important}

/* ---------- Responsive ---------- */
@media (max-width:1180px){
  .cnhf-item>a{padding:10px 10px!important;font-size:.93rem!important}
  .cnhf-bar{gap:18px}
}
@media (max-width:1060px){
  .cnhf-nav{display:none}
  .cnhf-burger{display:inline-flex}
  .cnhf-fgrid{grid-template-columns:1fr 1fr;gap:36px}
  .cnhf-fcontact{grid-column:1/-1}
  .cnhf-fbrand{grid-column:1/-1}
}
@media (max-width:640px){
  .cnhf-topbar .cnhf-top-note{display:none}
  .cnhf-topbar .cnhf-container{justify-content:center}
  .cnhf-top-links{gap:18px}
  .cnhf-bar{height:70px}
  .cnhf-header.is-stuck .cnhf-bar{height:64px}
  .cnhf-wordmark{font-size:1.45rem}
  .cnhf-actions .cnhf-cta span{display:none}
  .cnhf-actions .cnhf-cta{padding:13px!important}
  .cnhf-fgrid{grid-template-columns:1fr 1fr}
  .cnhf-fcontact{grid-column:1/-1}
  .cnhf-fbottom{flex-direction:column;align-items:flex-start}
}
@media (max-width:420px){.cnhf-top-links a:first-child{display:none}}
@media (prefers-reduced-motion:reduce){.cnhf *,.cnhf *::before,.cnhf *::after{animation:none!important;transition:none!important}}
/* social links */
.cnhf-top-social{display:flex;align-items:center;gap:6px;padding-left:22px;margin-left:4px;border-left:1px solid rgba(255,255,255,.18)}
.cnhf-top-links .cnhf-top-social a{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;color:rgba(255,255,255,.75)!important;transition:.25s}
.cnhf-top-links .cnhf-top-social a:hover{background:var(--accent);color:#fff!important}
.cnhf-top-links .cnhf-top-social svg{color:inherit}
.cnhf-fbrand .cnhf-follow{margin-top:24px!important;font-size:.75rem!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:rgba(255,255,255,.55)!important}
.cnhf-follow+.cnhf-social{margin-top:12px}
.cnhf-msocial a{background:#fff;border:1px solid var(--line);color:var(--ink)!important}
.cnhf-msocial{margin-top:4px}
@media (max-width:640px){.cnhf-top-social{padding-left:14px}}

/* ---------- Contact forms: always-visible fields, whatever the theme does ---------- */
body #cn-home form.form label{display:block!important;font-size:.82rem!important;font-weight:700!important;color:#4A4F6A!important;margin:0!important;text-align:left!important}
body #cn-home form.form input:not([name="website"]),
body #cn-home form.form select,
body #cn-home form.form textarea{
  display:block!important;width:100%!important;max-width:none!important;min-height:50px!important;height:auto!important;margin:6px 0 0!important;
  padding:13px 16px!important;border:1.5px solid #E3D8C8!important;border-radius:12px!important;background:#FFFCF7!important;
  color:#1B1F3B!important;-webkit-text-fill-color:#1B1F3B!important;font:500 1rem/1.4 'Plus Jakarta Sans',system-ui,sans-serif!important;
  box-shadow:none!important;outline:none!important;opacity:1!important;visibility:visible!important;transition:border-color .25s,box-shadow .25s!important}
body #cn-home form.form textarea{min-height:110px!important;resize:vertical}
body #cn-home form.form select{-webkit-appearance:none!important;appearance:none!important;padding-right:42px!important;cursor:pointer;
  background:#FFFCF7 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%237C8098' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center!important}
body #cn-home form.form input::placeholder,body #cn-home form.form textarea::placeholder{color:#9A9DB0!important;-webkit-text-fill-color:#9A9DB0!important;opacity:1!important}
body #cn-home form.form input:not([name="website"]):hover,body #cn-home form.form select:hover,body #cn-home form.form textarea:hover{border-color:#F6CFA6!important}
body #cn-home form.form input:not([name="website"]):focus,body #cn-home form.form select:focus,body #cn-home form.form textarea:focus{border-color:#F2811D!important;box-shadow:0 0 0 4px #FFE8CF!important;background-color:#fff!important}
body #cn-home form.form button[type="submit"]{cursor:pointer}
body #cn-home form.form button[disabled]{cursor:wait}
