
/* Noctilupus secondary editorial pages and wordmark system */
.site-header{transition:background-color .25s}.brand{position:relative;width:clamp(148px,18vw,215px);height:52px;display:flex;align-items:center;justify-content:center;overflow:visible}
.brand .logo-script,.brand .logo-mark{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .38s ease,transform .45s ease}
.brand .logo-script{opacity:1;transform:scale(1)}.brand .logo-mark{opacity:0;transform:translateY(7px) scale(.85)}
.site-header.is-scrolled .brand .logo-script{opacity:0;transform:translateY(-7px) scale(.91)}
.site-header.is-scrolled .brand .logo-mark{opacity:1;transform:translateY(0) scale(1)}
.brand .logo-mark{object-fit:contain;max-width:57px;left:50%;transform:translate(-50%,7px) scale(.85);filter:invert(1)}
.site-header.is-scrolled .brand .logo-mark{transform:translate(-50%,0) scale(1)}
.footer-brand img{display:block;width:170px;max-width:100%;height:auto}
.sitepage{min-height:650px}.inner-hero{padding:clamp(92px,11vw,170px) 0 55px}.inner-hero.airy{padding-bottom:clamp(50px,7vw,110px)}
.inner-hero .eyebrow{font:600 10px 'Inter',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#858585}.inner-title{font:500 clamp(53px,9vw,136px)/.96 'Inter',sans-serif;letter-spacing:-.085em;margin:25px 0}
.inner-sub{font:400 clamp(13px,1.35vw,17px)/1.85 'Montserrat',sans-serif;color:#666;max-width:630px;margin:25px 0 0}
.line-divider{width:100%;border:0;border-top:1px solid #e8e8e8;margin:0}
.page-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,5vw,90px);align-items:center;padding:clamp(55px,8vw,120px) 0}
.page-feature.reverse .page-feature-image{order:2}
.page-feature-image{width:100%;height:clamp(400px,47vw,710px);object-fit:cover;background:#f5f5f4}
.page-feature-copy{max-width:550px}
.page-feature-copy .h2{margin:22px 0}
.page-feature-copy p{font:400 13px/1.95 'Montserrat',sans-serif;color:#666;max-width:490px}
.page-feature-copy .eyebrow{font:600 10px 'Inter',sans-serif;letter-spacing:.14em;color:#777;text-transform:uppercase}
.page-banner{position:relative;margin:20px clamp(12px,3vw,44px);min-height:clamp(520px,65vw,820px);border-radius:7px;overflow:hidden;background:#e4e3e0}
.page-banner>img{height:100%;width:100%;position:absolute;inset:0;object-fit:cover;object-position:center 35%}
.page-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.46),rgba(0,0,0,.05))}
.page-banner-caption{position:absolute;bottom:clamp(35px,8vw,110px);left:clamp(26px,7vw,110px);z-index:1;color:white}
.page-banner-caption .big{font:500 clamp(54px,8vw,116px)/.94 'Inter',sans-serif;letter-spacing:-.075em;margin:20px 0}
.editorial-masonry{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(12px,2.3vw,30px);margin-bottom:115px}
.editorial-piece{grid-column:span 6;display:block}.editorial-piece:nth-child(2){margin-top:105px}.editorial-piece:nth-child(3){grid-column:span 7}.editorial-piece:nth-child(4){grid-column:span 5;margin-top:150px}
.editorial-piece img{width:100%;object-fit:cover;aspect-ratio:.83;background:#f4f4f2}.editorial-piece:nth-child(3) img{aspect-ratio:1.05}
.editorial-piece-meta{display:flex;justify-content:space-between;padding:14px 0;color:#777;font:500 10px 'Inter',sans-serif;text-transform:uppercase;letter-spacing:.09em}
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:20px 0 65px}.guide-card{background:#f6f6f5;padding:0 0 25px}.guide-card img{width:100%;height:clamp(320px,43vw,550px);object-fit:cover}.guide-card>div{padding:25px clamp(20px,3vw,42px)}
.guide-card h2{margin:0 0 12px;font:500 clamp(28px,3vw,45px)/1.1 'Inter',sans-serif;letter-spacing:-.06em}.guide-card p{color:#777;font-size:12px;line-height:1.9;max-width:350px}
.info-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:80px 0 95px}.info-step{border-top:1px solid #ddd;padding-top:20px}.info-step .num{font:600 10px 'Inter',sans-serif;color:#999}.info-step h3{font:500 23px 'Inter',sans-serif;letter-spacing:-.05em;margin:18px 0}.info-step p{color:#686868;font-size:12px;line-height:1.85}
.material-display{display:grid;grid-template-columns:1.1fr .9fr;gap:15px}.material-display img{height:clamp(400px,58vw,700px);width:100%;object-fit:cover}.material-display img:nth-child(2){margin-top:95px;height:clamp(330px,47vw,580px)}
.material-feature-row{display:grid;grid-template-columns:1fr 1.6fr;gap:50px;padding:65px 0;border-top:1px solid #e3e3e3}.material-feature-row h3{font:500 clamp(22px,3.5vw,41px) 'Inter',sans-serif;letter-spacing:-.06em;margin:0}.material-feature-row p{color:#686868;font-size:13px;line-height:2;max-width:620px;margin:0}
.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:35px 0 110px}.journal-card{display:block}.journal-card img{width:100%;aspect-ratio:.85;object-fit:cover;filter:saturate(.65);transition:filter .3s}.journal-card:hover img{filter:saturate(1)}.journal-card .eyebrow{display:block;color:#888;font:600 10px 'Inter',sans-serif;letter-spacing:.14em;margin:20px 0}.journal-card h2{font:500 clamp(24px,3.1vw,39px)/1.18 'Inter',sans-serif;letter-spacing:-.055em;margin:0 0 13px}.journal-card p{color:#777;font:400 12px/1.75 'Montserrat',sans-serif}
.article{max-width:820px;margin:0 auto;padding:100px 24px 130px}.article h1{font:500 clamp(50px,8vw,105px)/.98 'Inter',sans-serif;letter-spacing:-.075em;margin:22px 0 30px}.article>p{font:400 16px/2 'Montserrat',sans-serif;color:#595959;margin:27px 0}.article>img{width:100%;height:auto;margin:40px 0}.article blockquote{border-left:2px solid #171717;padding-left:25px;margin:52px 0;font:400 clamp(25px,4vw,45px)/1.3 Georgia,serif}
.archive-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:start;padding-bottom:110px}.archive-cover img{width:100%;aspect-ratio:1.08;object-fit:cover}.archive-copy h2{font:500 clamp(40px,5vw,76px)/1.1 'Inter',sans-serif;letter-spacing:-.075em;margin:20px 0}.archive-copy p{font-size:13px;line-height:1.9;color:#666}.archive-index{display:flex;flex-direction:column;gap:0;margin-top:25px}.archive-index a{display:flex;justify-content:space-between;border-top:1px solid #ddd;padding:14px 0;font:600 11px 'Inter',sans-serif;letter-spacing:.05em}
.support-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:clamp(35px,10vw,150px);padding:30px 0 130px;min-height:440px}
.support-layout h2{font:500 clamp(27px,3.6vw,49px)/1.12 'Inter',sans-serif;letter-spacing:-.06em;margin:0}.support-layout p{font:400 13px/1.9 'Montserrat',sans-serif;color:#666}.support-content details{border-bottom:1px solid #ddd;padding:17px 0}.support-content details:first-child{border-top:1px solid #ddd}
.support-content summary{font:600 13px/1.65 'Inter',sans-serif;cursor:pointer;display:flex;justify-content:space-between;gap:20px;list-style:none}.support-content summary:after{content:'+';font-size:18px;font-weight:400}.support-content details[open] summary:after{content:'−'}
.support-content details p{font-size:12px;line-height:1.9;color:#777;margin:15px 0}
.contact-form{display:grid;gap:18px}.contact-form label{font:600 11px 'Inter',sans-serif;letter-spacing:.06em;display:block;margin-bottom:8px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid #d8d8d8;border-radius:2px;background:#fff;padding:15px;color:#111;font:400 13px 'Inter',sans-serif}.contact-form textarea{min-height:160px;resize:vertical}.contact-form button{width:max-content}
.policy-prose{max-width:900px;margin:0 auto;padding:0 24px 110px;font:400 13px/1.95 'Montserrat',sans-serif;color:#4f4f4f}.policy-prose h1,.policy-prose h2,.policy-prose h3{font-family:'Inter',sans-serif;font-weight:500;letter-spacing:-.03em;color:#141414;margin-top:36px}.policy-prose p,.policy-prose ul{margin:13px 0}.policy-prose a{border-bottom:1px solid #888;text-decoration:none}
.page-bottom-cta{background:#f5f5f4;text-align:center;padding:100px 24px}.page-bottom-cta h2{font:500 clamp(36px,5vw,68px)/1.12 'Inter',sans-serif;letter-spacing:-.07em;margin:20px 0 29px}.page-bottom-cta p{color:#777;font-size:12px;max-width:410px;margin:0 auto 25px}
.search-ui{padding:20px 0 100px}.search-ui input{width:100%;padding:20px 0;border:0;border-bottom:1px solid #999;font:500 clamp(23px,4vw,42px) 'Inter',sans-serif;outline:none;letter-spacing:-.04em}.search-ui .product-grid{margin-top:40px}
@media(max-width:950px){.page-feature{grid-template-columns:1fr 1fr;gap:25px}.journal-grid{grid-template-columns:repeat(2,1fr)}.editorial-piece:nth-child(4){margin-top:70px}}
@media(max-width:700px){
 .brand{width:140px;height:49px}.brand .logo-mark{max-width:51px}
 .inner-hero{padding:68px 0 45px}.inner-title{font-size:clamp(51px,13vw,86px)}.inner-sub{font-size:12px}
 .page-feature,.page-feature.reverse{grid-template-columns:1fr;gap:25px;padding:50px 0}.page-feature.reverse .page-feature-image{order:0}.page-feature-image{height:auto;aspect-ratio:.86}.page-feature-copy{padding:5px 2px}.page-feature-copy .h2{font-size:42px}
 .page-banner{margin:10px;min-height:calc(100svh - 170px)}.page-banner>img{object-position:58% center}
 .editorial-masonry{gap:17px;margin-bottom:65px}.editorial-piece,.editorial-piece:nth-child(3),.editorial-piece:nth-child(4){grid-column:span 12;margin-top:0}.editorial-piece img,.editorial-piece:nth-child(3) img{aspect-ratio:.83}.editorial-piece:nth-child(2),.editorial-piece:nth-child(4){width:83%;margin-left:auto}.editorial-piece-meta{font-size:9px}
 .guide-grid{grid-template-columns:1fr;gap:20px}.guide-card img{height:auto;aspect-ratio:.89}.info-steps{grid-template-columns:1fr;gap:32px;padding:40px 0 70px}.info-step h3{font-size:26px}
 .material-display{grid-template-columns:1fr;gap:12px}.material-display img,.material-display img:nth-child(2){margin:0;height:auto;aspect-ratio:1}.material-display img:nth-child(2){aspect-ratio:1.2}
 .material-feature-row{grid-template-columns:1fr;gap:17px;padding:39px 0}.material-feature-row h3{font-size:30px}
 .journal-grid{grid-template-columns:1fr;gap:39px;margin-bottom:70px}.journal-card img{aspect-ratio:1.08}.journal-card h2{font-size:33px}.article{padding:70px 18px 90px}.article>p{font-size:13px}
 .archive-grid,.support-layout{grid-template-columns:1fr;gap:30px}.archive-grid{padding-bottom:70px}.archive-copy{order:-1}.support-layout{padding-bottom:80px}.page-bottom-cta{padding:75px 24px}
 .policy-prose{padding-bottom:70px}.search-ui{padding-bottom:70px}
}

/* Keep the navigation usable at smaller mobile heights */
.mobile-nav.open{overflow-y:auto;overscroll-behavior:contain;padding-bottom:55px}
.site-header.is-scrolled + .mobile-nav{top:var(--header)}
@media(max-width:700px){
  .mobile-nav{gap:0;padding:20px 28px 70px}
  .mobile-nav a{font-size:clamp(23px,6.5vw,34px);padding:11px 0}
  .brand{width:147px}
}

/* V2.1 — refined mobile navigation and consistent line icons */
:root{
  --noctilupus-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h15m-6-6 6 6-6 6' fill='none' stroke='black' stroke-width='1.55' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.arrow-icon,.menu-chevron{
  display:inline-block;
  flex:0 0 auto;
  width:16px;height:16px;
  background-color:currentColor;
  -webkit-mask:var(--noctilupus-arrow) center / contain no-repeat;
  mask:var(--noctilupus-arrow) center / contain no-repeat;
  vertical-align:-3px;
}
.arrow-icon{margin-left:8px;transition:transform .28s ease}
.pill .arrow-icon,.pill .arrow .arrow-icon{margin-left:0}
.pill:hover .arrow-icon,.textlink:hover .arrow-icon{transform:translateX(3px)}
.arrow{font-size:0;line-height:1;display:inline-flex;align-items:center}
.arrow .arrow-icon{width:16px;height:16px}
a:not(.pill)>.arrow-icon{width:14px;height:14px}
.menu-glyph .menu-line{transform-box:fill-box;transform-origin:center;transition:transform .32s cubic-bezier(.2,.72,.2,1),opacity .2s}
#menu-button[aria-expanded="true"] .menu-line-top{transform:translateY(5px) rotate(45deg)}
#menu-button[aria-expanded="true"] .menu-line-mid{opacity:0;transform:scaleX(0)}
#menu-button[aria-expanded="true"] .menu-line-bottom{transform:translateY(-5px) rotate(-45deg)}
@media(max-width:1020px){
  .mobile-nav{
    display:flex;
    flex-direction:column;
    gap:0;
    padding:0;
    background:#fff;
    visibility:hidden;
    opacity:0;
    pointer-events:none;
    transform:translateY(-18px);
    transition:opacity .36s ease,transform .44s cubic-bezier(.2,.72,.2,1),visibility .36s;
    will-change:transform,opacity;
    box-shadow:0 24px 48px rgba(0,0,0,.07);
    overflow:hidden;
  }
  .mobile-nav.open{
    display:flex;
    visibility:visible;
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
    overflow:hidden;
  }
  .mobile-nav-inner{
    width:100%;height:100%;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    padding:clamp(30px,4vw,55px) clamp(27px,7vw,80px) clamp(55px,8vw,105px);
    display:flex;flex-direction:column;
    gap:0;
  }
  .mobile-nav-eyebrow{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin:0 0 13px;
    font:550 9px/1.5 'Inter',sans-serif;
    letter-spacing:.17em;
    color:#989898;
  }
  .mobile-nav-eyebrow span{font-weight:400;letter-spacing:.07em;color:#b3b3b3}
  .mobile-nav-primary{display:flex;flex-direction:column;gap:0}
  .mobile-nav-primary a{
    display:flex;align-items:center;justify-content:space-between;gap:20px;
    min-height:65px;padding:15px 0;
    font:500 clamp(26px,3.7vw,37px)/1.2 'Inter',sans-serif;
    letter-spacing:-.058em;
    border-bottom:1px solid #ececec;
    opacity:0;
    transform:translateY(13px);
    transition:opacity .44s ease,transform .54s cubic-bezier(.18,.75,.2,1),color .2s;
  }
  .mobile-nav.open .mobile-nav-primary a{opacity:1;transform:translateY(0)}
  .mobile-nav.open .mobile-nav-primary a:nth-child(1){transition-delay:40ms}
  .mobile-nav.open .mobile-nav-primary a:nth-child(2){transition-delay:75ms}
  .mobile-nav.open .mobile-nav-primary a:nth-child(3){transition-delay:110ms}
  .mobile-nav.open .mobile-nav-primary a:nth-child(4){transition-delay:145ms}
  .mobile-nav.open .mobile-nav-primary a:nth-child(5){transition-delay:180ms}
  .mobile-nav-primary a:hover,.mobile-nav-secondary a:hover{color:#888}
  .menu-chevron{width:19px;height:19px;opacity:.45;transition:transform .25s ease}
  .mobile-nav-primary a:hover .menu-chevron{transform:translateX(4px)}
  .mobile-nav-lower{margin-top:clamp(34px,5vw,56px);opacity:0;transform:translateY(10px);transition:opacity .46s ease,transform .48s ease}
  .mobile-nav.open .mobile-nav-lower{opacity:1;transform:translateY(0);transition-delay:215ms}
  .mobile-nav-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px;row-gap:0}
  .mobile-nav-secondary a{
    display:block;padding:12px 0;border-bottom:1px solid #f0f0f0;
    font:500 13px/1.5 'Inter',sans-serif;
    letter-spacing:-.012em;
    color:#555;
    transition:color .2s ease;
  }
  .mobile-nav-signature{
    display:flex;justify-content:space-between;gap:12px;
    font:500 9px 'Inter',sans-serif;letter-spacing:.11em;
    color:#b0b0b0;
    margin-top:clamp(34px,5vw,58px);
  }
}
@media(max-width:700px){
  .mobile-nav{top:calc(var(--header) + 29px)}
  .mobile-nav-inner{padding:35px 30px max(68px,env(safe-area-inset-bottom))}
  .mobile-nav-primary a{min-height:68px;padding:15px 0;font-size:clamp(26px,7.2vw,31px)}
  .mobile-nav-lower{margin-top:34px}
  .mobile-nav-secondary{column-gap:24px}
  .mobile-nav-secondary a{font-size:12px;padding:13px 0}
  .mobile-nav-signature{margin-top:35px}
}
@media(prefers-reduced-motion:reduce){
  .mobile-nav,.mobile-nav-primary a,.mobile-nav-lower,.menu-glyph .menu-line,.arrow-icon,.menu-chevron{
    transition:none!important;animation:none!important
  }
  .mobile-nav.open .mobile-nav-primary a,.mobile-nav.open .mobile-nav-lower{opacity:1;transform:none}
}
