.dn{--dn-pad:1rem;--dn-pill:rgba(255,255,255,.7);--dn-hover:rgba(127,127,127,.16);--dn-card:#fff;--dn-ring:rgba(127,127,127,.22);
  position:relative;z-index:9990;width:100%;font-family:var(--dn-font);color:var(--dn-text);line-height:1.4}
@supports (background:color-mix(in srgb,red,blue)){
  .dn{--dn-pill:color-mix(in srgb,var(--dn-bg) 35%,#fff);--dn-hover:color-mix(in srgb,var(--dn-text) 8%,var(--dn-bg));--dn-card:color-mix(in srgb,var(--dn-bg) 20%,#fff);--dn-ring:color-mix(in srgb,var(--dn-text) 10%,transparent)}
}
.dn *,.dn *::before,.dn *::after{box-sizing:border-box}
.dn--sticky{position:sticky;top:0}
.dn--transparent{position:absolute;top:0;left:0;right:0}
.dn--transparent.dn--sticky{position:fixed}
.admin-bar .dn--sticky,.admin-bar .dn--transparent{top:32px}
@media (max-width:782px){.admin-bar .dn--sticky,.admin-bar .dn--transparent{top:46px}}
.dn--shrink.is-scrolled{--dn-pad:.5rem}

/* Top bar */
.dn-topbar{position:relative;z-index:2;background:#000;background:color-mix(in srgb,var(--dn-text) 92%,#000);color:var(--dn-bg);font-size:.8125rem}
.dn-topbar-in{max-width:var(--dn-max);margin:0 auto;padding:.4rem 1.25rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.dn-topbar a{color:inherit;font-weight:600;text-decoration:none}
.dn-topbar a:hover{color:var(--dn-accent)}
.dn-topbar-links{display:flex;gap:1.25rem}

/* Bar */
.dn-bar{position:relative;background:var(--dn-bg);transition:background-color .25s ease,box-shadow .25s ease}
.dn--sticky.is-scrolled .dn-bar{box-shadow:0 10px 28px -18px rgba(28,21,18,.45)}
.dn--transparent:not(.is-scrolled):not(.is-open) .dn-bar{background:transparent}
.dn-inner{position:relative;z-index:2;max-width:var(--dn-max);margin:0 auto;padding:var(--dn-pad) 1.25rem;display:flex;align-items:center;gap:1.5rem;transition:padding .25s ease}

/* Brand */
.dn-brand{display:inline-flex;align-items:center;gap:.6rem;flex:0 0 auto;color:var(--dn-text);text-decoration:none}
.dn-icon{width:30px;height:30px;flex:none}
.dn-logo{display:block;height:var(--dn-logo-h);width:auto;max-width:220px;transition:height .25s ease}
.dn--shrink.is-scrolled .dn-logo{height:calc(var(--dn-logo-h) * .78)}
.dn-brand-text{font-family:var(--dn-font-head);font-size:1.5rem;font-weight:800;letter-spacing:-.03em;line-height:1}
.dn-brand-text b{color:var(--dn-accent);font-weight:800}

/* Menu */
.dn-menu,.dn-menu ul{list-style:none;margin:0;padding:0}
.dn-menu a{color:var(--dn-text);font-weight:600;text-decoration:none}
.dn a:focus-visible,.dn button:focus-visible{outline:3px solid var(--dn-text);outline-offset:3px;border-radius:6px}

.dn-sub-toggle{position:relative;width:1.75rem;height:1.75rem;padding:0;border:0;background:none;color:var(--dn-text);cursor:pointer;flex:0 0 auto}
.dn-sub-toggle::before{content:"";position:absolute;left:50%;top:50%;width:.45rem;height:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translate(-50%,-70%) rotate(45deg);transition:transform .2s ease}
.dn li.is-open>.dn-sub-toggle::before{transform:translate(-50%,-30%) rotate(-135deg)}

/* Buttons */
.dn .dn-cta{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.6rem;background:var(--dn-accent);color:var(--dn-accent-text);font-weight:700;font-size:1rem;white-space:nowrap;text-decoration:none;border-radius:var(--dn-radius);box-shadow:0 10px 24px -8px color-mix(in srgb,var(--dn-accent) 60%,transparent);transition:filter .2s ease,transform .2s ease,box-shadow .2s ease}
.dn .dn-cta:hover{filter:brightness(.92);transform:translateY(-2px)}
.dn .dn-phone{color:var(--dn-text);font-weight:700;font-size:.94rem;text-decoration:none;white-space:nowrap}
.dn .dn-phone:hover{color:var(--dn-accent)}

/* Menu button (mobile) */
.dn-toggle{display:none;padding:.7rem 1.1rem;border:0;border-radius:12px;background:var(--dn-hover);color:var(--dn-text);font:700 .94rem var(--dn-font);cursor:pointer}

/* Dune edge */
.dn-dunes{display:none;position:absolute;left:0;right:0;top:100%;width:100%;height:10px;margin-top:-1px;fill:var(--dn-bg);pointer-events:none;transition:opacity .25s ease}
.dn--dunes .dn-dunes{display:block}
.dn--transparent:not(.is-scrolled):not(.is-open) .dn-dunes,.dn.is-open .dn-dunes{opacity:0}

.dn-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media (prefers-reduced-motion:reduce){.dn *,.dn *::before,.dn *::after{transition:none!important;animation:none!important}}

/* Morocco Planet hero background: sunset glow + zellij pattern */
.dn--deco .dn-bar{background:
  radial-gradient(900px 520px at 88% 6%,rgba(232,163,61,.28),transparent 62%),
  radial-gradient(760px 520px at -6% 100%,rgba(217,70,0,.14),transparent 60%),
  var(--dn-bg)}
.dn--deco .dn-bar::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23d94600' stroke-opacity='.10' stroke-width='1.2'%3E%3Crect x='14' y='14' width='36' height='36'/%3E%3Crect x='14' y='14' width='36' height='36' transform='rotate(45 32 32)'/%3E%3Ccircle cx='32' cy='32' r='6'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-image:linear-gradient(100deg,#000 0%,transparent 55%);mask-image:linear-gradient(100deg,#000 0%,transparent 55%)}
.dn--deco.dn--transparent:not(.is-scrolled):not(.is-open) .dn-bar{background:transparent}
.dn--deco.dn--transparent:not(.is-scrolled):not(.is-open) .dn-bar::before{display:none}
