/* Nieto Site Kit: header, footer, contact form, areas. Palette taken from the live site. */
:root{
  --nsk-bg:#0B0B0D; --nsk-panel:#131316; --nsk-line:#26242A; --nsk-cream:#F5F0E6; --nsk-muted:#9A958C; --nsk-gold:#BCA480; --nsk-soft:#CFC9BD;
}
.nsk-skip{position:absolute;left:-9999px;top:0;background:var(--nsk-gold);color:var(--nsk-bg);padding:10px 16px;z-index:100000}
.nsk-skip:focus{left:8px;top:8px}

/* ---------- header ---------- */
.nsk-header{position:sticky;top:0;z-index:9990;background:rgba(11,11,13,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--nsk-line);font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif}
body.admin-bar .nsk-header{top:32px}
.nsk-header-in{max-width:1240px;margin:0 auto;padding:0 24px;height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nsk-header a,.nsk-footer a{text-decoration:none}
.nsk-brand{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:1.35rem;line-height:1.1;color:var(--nsk-cream);white-space:nowrap}
.nsk-brand small{display:block;font-family:'Jost',system-ui,sans-serif;font-style:normal;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--nsk-gold);margin-top:3px}
.nsk-menu{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.nsk-menu>li{position:relative;margin:0;padding:0}
.nsk-menu>li>a,.nsk-menu>li>button{display:flex;align-items:center;gap:6px;padding:10px 12px;font:500 .86rem 'Jost',system-ui,sans-serif;letter-spacing:.06em;color:var(--nsk-cream);background:none;border:0;cursor:pointer;border-radius:0}
.nsk-menu>li>a:hover,.nsk-menu>li>button:hover,.nsk-menu>li:focus-within>button{color:var(--nsk-gold);background:none}
.nsk-menu a[aria-current="page"]{color:var(--nsk-gold)}
.nsk-menu a:focus-visible,.nsk-menu button:focus-visible,.nsk-burger:focus-visible,.nsk-footer a:focus-visible{outline:2px solid var(--nsk-gold);outline-offset:3px}
.nsk-caret{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.nsk-has-sub:hover .nsk-caret,.nsk-sub-open .nsk-caret{transform:rotate(225deg) translateY(-2px)}
.nsk-sub{position:absolute;top:100%;left:0;min-width:220px;background:var(--nsk-panel);border:1px solid var(--nsk-line);border-top:2px solid var(--nsk-gold);list-style:none;margin:0;padding:8px 0;opacity:0;visibility:hidden;transform:translateY(6px);transition:.18s}
.nsk-has-sub:hover .nsk-sub,.nsk-has-sub:focus-within .nsk-sub,.nsk-sub-open .nsk-sub{opacity:1;visibility:visible;transform:none}
.nsk-sub li{margin:0;padding:0}
.nsk-sub a{display:block;padding:11px 20px;font-size:.88rem;letter-spacing:.04em;color:var(--nsk-cream)}
.nsk-sub a:hover{background:#1a1a1e;color:var(--nsk-gold)}
/* Zoning tab: gold only when current page (Oct 7 2026) */
.nsk-menu > li.nsk-current-parent > button{color:var(--nsk-gold)}
.nsk-menu a.nsk-call{border:1px solid var(--nsk-gold);color:var(--nsk-gold);padding:10px 18px;margin-left:8px}
.nsk-menu a.nsk-call:hover{background:var(--nsk-gold);color:var(--nsk-bg)}
.nsk-burger{display:none;background:none;border:1px solid var(--nsk-line);color:var(--nsk-cream);width:44px;height:44px;cursor:pointer;padding:0}
.nsk-burger span,.nsk-burger span::before,.nsk-burger span::after{display:block;width:18px;height:1.5px;background:currentColor;margin:auto;position:relative}
.nsk-burger span::before,.nsk-burger span::after{content:"";position:absolute;left:0}
.nsk-burger span::before{top:-6px}.nsk-burger span::after{top:6px}
@media (max-width:1060px){
  .nsk-burger{display:block}
  .nsk-header nav{position:absolute;left:0;right:0;top:76px}
  .nsk-menu{display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--nsk-bg);border-bottom:1px solid var(--nsk-line);padding:8px 24px 20px;max-height:calc(100vh - 76px);overflow:auto}
  .nsk-menu.nsk-open{display:flex}
  .nsk-menu>li>a,.nsk-menu>li>button{width:100%;justify-content:space-between;padding:16px 4px;border-bottom:1px solid var(--nsk-line);font-size:.95rem}
  .nsk-sub{position:static;opacity:1;visibility:visible;transform:none;display:none;border:0;border-left:2px solid var(--nsk-gold);margin:0 0 6px 8px;background:transparent}
  .nsk-has-sub:hover .nsk-sub{display:none}
  .nsk-sub-open .nsk-sub{display:block}
  .nsk-sub a{padding:13px 16px}
  .nsk-menu a.nsk-call{margin:16px 0 0;justify-content:center;text-align:center}
}

/* ---------- footer ---------- */
.nsk-footer{background:var(--nsk-bg);color:var(--nsk-soft);border-top:1px solid var(--nsk-line);font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.65}
.nsk-footer-in{max-width:1240px;margin:0 auto;padding:64px 24px 36px}
.nsk-footer-top{display:grid;grid-template-columns:1.1fr .8fr 2fr;gap:48px}
.nsk-footer h2{font:500 .74rem 'Jost',system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--nsk-gold);margin:0 0 16px}
.nsk-footer h3{font:500 .95rem 'Playfair Display',Georgia,serif;font-style:italic;color:var(--nsk-cream);margin:18px 0 6px}
.nsk-footer h3:first-of-type{margin-top:0}
.nsk-footer p{margin:0 0 12px;font-size:.92rem;color:var(--nsk-soft)}
.nsk-footer ul{list-style:none;margin:0;padding:0}
.nsk-footer li{margin:0 0 8px;font-size:.92rem}
.nsk-footer a{color:var(--nsk-cream)}
.nsk-footer a:hover{color:var(--nsk-gold)}
.nsk-brand-foot{margin-bottom:14px}
.nsk-footer-areas p{font-size:.84rem;color:var(--nsk-muted);line-height:1.8}
.nsk-footer-legal{border-top:1px solid var(--nsk-line);margin-top:44px;padding-top:24px}
.nsk-footer-legal p{font-size:.78rem;color:var(--nsk-muted)}
@media (max-width:900px){.nsk-footer-top{grid-template-columns:1fr;gap:32px}.nsk-footer-in{padding:44px 24px 28px}}

/* ---------- contact form ---------- */
.nsk-form-wrap{max-width:760px;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--nsk-cream)}
.nsk-form label{display:block;font-size:.84rem;letter-spacing:.04em;color:var(--nsk-soft);margin:0 0 18px}
.nsk-form input[type=text],.nsk-form input[type=email],.nsk-form input[type=tel],.nsk-form select,.nsk-form textarea{display:block;width:100%;margin-top:6px;padding:13px 14px;background:var(--nsk-panel);color:var(--nsk-cream);border:1px solid var(--nsk-line);border-radius:0;font:400 1rem 'Jost',system-ui,sans-serif;box-sizing:border-box}
.nsk-form input:focus,.nsk-form select:focus,.nsk-form textarea:focus{outline:2px solid var(--nsk-gold);outline-offset:1px;border-color:var(--nsk-gold)}
.nsk-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:640px){.nsk-row{grid-template-columns:1fr;gap:0}}
.nsk-check{display:flex!important;gap:12px;align-items:flex-start;font-size:.82rem!important;color:var(--nsk-muted)!important}
.nsk-check input{margin-top:4px;flex:none;width:18px;height:18px;accent-color:#BCA480}
.nsk-check a{color:var(--nsk-gold)}
.nsk-btn{background:var(--nsk-gold);color:var(--nsk-bg);border:0;padding:15px 34px;font:500 .9rem 'Jost',system-ui,sans-serif;letter-spacing:.08em;cursor:pointer;border-radius:0}
.nsk-btn:hover{filter:brightness(1.08)}
.nsk-btn[disabled]{opacity:.6;cursor:wait}
.nsk-error{color:#f0a38e;font-size:.9rem;margin:0 0 14px}
.nsk-fine{color:var(--nsk-muted);font-size:.85rem}
.nsk-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.nsk-thanks{border-left:2px solid var(--nsk-gold);padding:8px 0 8px 20px}
.nsk-thanks h2{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:500;color:var(--nsk-cream);margin:0 0 8px}
.nsk-thanks a{color:var(--nsk-gold)}

/* ---------- areas ---------- */
.nsk-areas{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--nsk-soft)}
.nsk-area{margin:0 0 40px}
.nsk-area h2{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:500;color:var(--nsk-cream);margin:0 0 14px}
.nsk-area h3{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--nsk-gold);margin:20px 0 6px}
.nsk-area ul{list-style:none;margin:0;padding:0;columns:3 180px;column-gap:28px}
.nsk-area li{margin:0 0 6px;break-inside:avoid}
.nsk-hamlets{color:var(--nsk-muted)}

/* Compliance footer additions */
.nsk-footer-legal .nsk-fh{display:flex;gap:12px;align-items:flex-start}
.nsk-footer-legal .nsk-eho{flex:0 0 auto;margin-top:2px;opacity:.85}
.nsk-footer-legal .nsk-notices{font-size:.92em}
.nsk-footer-legal .nsk-notices a{text-decoration:underline;text-underline-offset:2px}
