#lunera-home .site-header { position:relative; z-index:10; max-width:none; padding-inline:max(5%,calc((100vw - 1300px)/2)); }
#lunera-home .site-header nav { gap:23px; }
#lunera-home .site-header [aria-current="page"] { color:var(--accent); }
#lunera-home .nav-menu { position:relative; }
#lunera-home .nav-menu summary { cursor:pointer; list-style:none; padding:10px 0; }
#lunera-home .nav-menu summary::-webkit-details-marker { display:none; }
#lunera-home .nav-menu summary:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
#lunera-home .nav-panel { position:absolute; top:100%; right:-15px; min-width:310px; display:grid; gap:0; background:#22202b; border:1px solid #4b465c; border-radius:8px; padding:10px; box-shadow:0 20px 60px #0008; max-height:75vh; overflow:auto; }
#lunera-home .nav-panel a { padding:10px 13px; border-radius:5px; line-height:1.35; }
#lunera-home .nav-panel a:hover { background:#34303f; }
#lunera-home .cart-link { border:1px solid #625974; padding:7px 13px; border-radius:5px; }
#lunera-home .page-title { max-width:1260px; margin:auto; padding:70px 5% 45px; border-bottom:1px solid var(--line); }
#lunera-home .page-title .eyebrow { margin-bottom:18px; }
#lunera-home .page-title h1 { font-size:clamp(38px,5vw,66px); max-width:990px; margin:0; line-height:1.08; letter-spacing:-2px; }
#lunera-home .import-section { max-width:1260px; margin:auto; padding:45px 5%; border-bottom:1px solid var(--line); }
#lunera-home .content-flow { display:flex; flex-direction:column; gap:28px; }
#lunera-home .import-copy { max-width:850px; width:100%; }
#lunera-home .import-copy p { font-size:17px; line-height:1.8; margin-bottom:19px; color:#d6d2e0; overflow-wrap:anywhere; }
#lunera-home .import-copy p:last-child { margin-bottom:0; }
#lunera-home .import-copy h2 { font-size:clamp(27px,3vw,40px); letter-spacing:-1px; line-height:1.2; margin:5px 0 23px; }
#lunera-home .import-copy h3 { font-size:22px; line-height:1.5; margin:0 0 20px; }
#lunera-home .import-copy h4,#lunera-home .import-copy h5 { font-size:20px; line-height:1.5; }
#lunera-home .import-copy strong { font-weight:600; }
#lunera-home .import-copy a { color:var(--accent); text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
#lunera-home .import-copy li { margin-bottom:12px; }
#lunera-home .import-copy pre { white-space:pre-wrap; overflow-wrap:anywhere; }
#lunera-home .gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
#lunera-home .gallery-grid:has(> :only-child) { grid-template-columns:minmax(0,640px); }
#lunera-home .gallery-grid > figure { margin:0; min-width:0; }
#lunera-home .gallery-grid img { width:100%; aspect-ratio:1.3; object-fit:cover; background:#24202f; border:1px solid var(--line); border-radius:7px; }
#lunera-home .gallery-grid > figure:only-child img { aspect-ratio:auto; max-height:660px; object-fit:contain; }
#lunera-home .gallery-grid a[data-lightbox] { display:block; cursor:zoom-in; }
#lunera-home .gallery-grid a[data-lightbox]:hover img { border-color:var(--accent); }
#lunera-home .gallery-grid figcaption { padding:14px 0 0; color:var(--muted); font-size:14px; line-height:1.6; display:flex; flex-direction:column; align-items:flex-start; gap:15px; }
#lunera-home .download-grid { gap:30px; }
#lunera-home .download-grid img { aspect-ratio:1; object-fit:contain; }
#lunera-home .import-actions { display:flex; gap:13px; flex-wrap:wrap; }
#lunera-home .social-links { display:flex; flex-wrap:wrap; gap:18px; font-size:14px; }
#lunera-home .social-links a { text-decoration:underline; text-underline-offset:4px; }
#lunera-home .contact-card,#lunera-home .map-card { border:1px solid #494151; border-radius:10px; padding:32px; width:100%; max-width:850px; background:#1c1924; }
#lunera-home .contact-card h2,#lunera-home .map-card h2 { font-size:30px; letter-spacing:-.8px; margin-bottom:25px; }
#lunera-home .contact-card form { display:grid; gap:22px; }
#lunera-home .contact-card label { display:flex; flex-direction:column; gap:8px; font-size:15px; }
#lunera-home input:not([type=checkbox]),#lunera-home textarea { box-sizing:border-box; width:100%; padding:12px 14px; border:1px solid #6b6179; border-radius:5px; background:#121018; color:var(--ink); font:inherit; font-size:16px; }
#lunera-home .contact-card input:focus,#lunera-home .contact-card textarea:focus { outline:2px solid var(--accent); outline-offset:2px; }
#lunera-home .contact-card .consent-label { display:flex; flex-direction:row; gap:12px; align-items:flex-start; color:var(--muted); line-height:1.6; }
#lunera-home input[type=checkbox] { width:20px; height:20px; margin:3px 0 0; flex-shrink:0; accent-color:var(--accent); }
#lunera-home .contact-card button { justify-self:start; font-family:inherit; cursor:pointer; }
#lunera-home .form-note { color:var(--muted); font-size:13px; }
#lunera-home .form-status:empty { display:none; }
#lunera-home .form-status { padding:15px; border:1px solid var(--line); background:#282130; border-radius:5px; }
#lunera-home .map-card > p { color:var(--muted); margin-bottom:25px; }
#lunera-home .map-card .text-link { margin-top:18px; }
#lunera-home .map-frame iframe { width:100%; height:400px; border:0; border-radius:6px; margin-top:24px; background:#26232d; }
#lunera-home .shop-section { max-width:1340px; padding:38px 5% 65px; margin:auto; }
#lunera-home .shop-intro { max-width:740px; margin-bottom:30px; color:var(--muted); font-size:17px; }
#lunera-home .shop-surface { background:#fff; color:#151515; border-radius:12px; padding:26px; min-height:420px; }
#lunera-home .shop-surface a { color:inherit; }
#lunera-home .shop-surface img { width:auto; height:auto; }
#lunera-home .shop-surface .ecwid img { max-width:100%; }
#lunera-home .site-directory { border-top:1px solid var(--line); }
#lunera-home .site-directory > div > p:not(.eyebrow) { margin-top:25px; color:var(--muted); max-width:620px; }
#lunera-home .directory-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:40px; }
#lunera-home .directory-grid a { display:flex; flex-direction:column; justify-content:space-between; gap:24px; min-height:140px; border:1px solid #474150; border-radius:8px; background:#1d1925; padding:24px; }
#lunera-home .directory-grid a:hover { border-color:var(--accent); }
#lunera-home .directory-grid strong { font-size:20px; font-weight:500; }
#lunera-home .directory-grid span { color:var(--accent); font-size:14px; }
#lunera-home .site-footer { grid-template-columns:1.3fr 1fr 1.2fr .7fr; gap:30px; }
#lunera-home .site-footer nav { line-height:1.45; gap:15px; }
#image-viewer { background:#16131d; color:#f6f5fb; border:1px solid #6d607e; border-radius:10px; width:min(1150px,94vw); max-height:94vh; padding:16px; box-sizing:border-box; }
#image-viewer::backdrop { background:#08060be8; }
#image-viewer img { display:block; max-width:100%; width:auto; max-height:77vh; margin:12px auto; object-fit:contain; }
#image-viewer p { text-align:center; margin:10px 0 0; font:14px/1.5 Arial,sans-serif; }
.viewer-toolbar { display:flex; align-items:center; gap:12px; }
.viewer-toolbar span { flex:1; text-align:center; font:14px Arial,sans-serif; }
.viewer-toolbar button { font:14px Arial,sans-serif; color:#f6f5fb; border:1px solid #786e86; background:#30273d; border-radius:5px; padding:9px 14px; cursor:pointer; }
@media(min-width:760px) { #lunera-home .gallery-grid:has(> :nth-child(2):last-child) { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:1000px) { #lunera-home .site-header { padding-inline:5%; } #lunera-home .site-header nav { gap:16px; } #lunera-home .site-footer { grid-template-columns:repeat(2,1fr); } }
@media(max-width:760px) { #lunera-home .site-header { display:flex; flex-direction:column; align-items:flex-start; padding:20px 6%; gap:12px; } #lunera-home .site-header nav { display:flex; flex-wrap:wrap; gap:12px 18px; width:100%; font-size:13px; justify-content:flex-start; } #lunera-home .nav-panel { right:auto; left:0; min-width:250px; width:min(310px,85vw); } #lunera-home .page-title { padding:48px 6% 32px; } #lunera-home .page-title h1 { letter-spacing:-1.2px; } #lunera-home .import-section { padding:30px 6%; } #lunera-home .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; } #lunera-home .import-copy p { font-size:16px; } #lunera-home .directory-grid { grid-template-columns:repeat(2,1fr); } #lunera-home .shop-section { padding:28px 4% 45px; } #lunera-home .shop-surface { padding:16px 10px; } #lunera-home .contact-card,#lunera-home .map-card { padding:23px; } }
@media(max-width:480px) { #lunera-home .site-header nav > a:nth-child(3) { display:none; } #lunera-home .site-header nav { gap:14px; } #lunera-home .nav-panel { left:auto; right:-30px; } #lunera-home .download-grid { grid-template-columns:1fr; } #lunera-home .directory-grid { grid-template-columns:1fr; } #lunera-home .gallery-grid figcaption { font-size:12px; } #lunera-home .site-footer { grid-template-columns:1fr; } .viewer-toolbar { gap:8px; } .viewer-toolbar button { padding:9px 10px; } }
/* Keep the store's typography readable within the marketing design. */
#lunera-home .shop-surface h1 { font-size:28px; line-height:1.25; letter-spacing:-.6px; margin:0 0 20px; }
#lunera-home .shop-surface h2 { font-size:24px; line-height:1.3; letter-spacing:-.4px; margin:22px 0 14px; }
#lunera-home .shop-surface h3 { font-size:20px; line-height:1.4; letter-spacing:0; margin:20px 0 12px; }
#lunera-home .shop-surface p { margin:0 0 14px; }
#lunera-home .shop-surface .ecwid-productBrowser-productsGrid-productTopFragment-inner p { margin:0; }
#lunera-home .site-header nav > a:nth-child(3) { display:inline-block; }
@media(max-width:480px) { #lunera-home .shop-surface h1 { font-size:25px; } #lunera-home .site-header nav { gap:10px 16px; } }
@media(max-width:760px) {
  #lunera-home .site-header nav { position:relative; }
  #lunera-home .nav-menu { position:static; }
  #lunera-home .nav-panel { left:0; right:auto; top:100%; min-width:0; width:min(330px,88vw); }
}
