/*
Theme Name: North Peptides
Theme URI: https://northpeptides.local/
Author: North Peptides
Description: An original, WooCommerce-ready research-supply storefront theme using the Northern Proof System.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 8.1
Text Domain: north-peptides
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* NORTH PEPTIDES — Northern Proof System: Mineral White, Obsidian Black, Maple Signal Red, Space Grotesk, IBM Plex Mono. */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root { --np-ink:#171417; --np-paper:#fffdfc; --np-soft:#f8efed; --np-line:#e5d9d8; --np-red:#ba2027; --np-red-dark:#971b21; --np-copy:#675e60; --np-mono:"IBM Plex Mono",monospace; --np-display:"Space Grotesk",sans-serif; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { background:var(--np-paper); color:var(--np-ink); font-family:var(--np-display); margin:0; overflow-x:hidden; overflow-y:auto; } img { height:auto; max-width:100%; } a { color:inherit; text-decoration:none; } button,input,select,textarea { font:inherit; } button { cursor:pointer; } .screen-reader-text { clip:rect(1px,1px,1px,1px); clip-path:inset(50%); height:1px; margin:-1px; overflow:hidden; position:absolute; width:1px; word-wrap:normal!important; }
.np-site { overflow-x:hidden; }.np-wrap { margin:0 auto; max-width:1370px; padding:0 4.5vw; }.np-kicker { align-items:center; color:#7a6668; display:flex; font:400 9px/1.3 var(--np-mono); gap:10px; letter-spacing:.13em; text-transform:uppercase; }.np-kicker::before { background:currentColor; content:""; height:1px; width:28px; }.np-kicker--light { color:rgba(255,255,255,.67); }.np-button { align-items:center; background:var(--np-red); border:0; color:#fff; display:inline-flex; font-size:12px; font-weight:700; gap:10px; justify-content:center; padding:15px 18px; transition:background .16s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1); }.np-button:hover { background:var(--np-red-dark); }.np-button:active { transform:scale(.97); }.np-arrow::after { content:"↗"; font-size:15px; line-height:1; }

.np-ribbon { background:var(--np-red); color:#fff; font:400 9px/30px var(--np-mono); letter-spacing:.11em; overflow:hidden; text-transform:uppercase; white-space:nowrap; }.np-ribbon__track { animation:np-ticker 32s linear infinite; display:flex; width:max-content; }.np-ribbon span { display:inline-block; padding:0 34px; }.np-ribbon span::before { content:"•"; margin-right:34px; }
.np-header { align-items:center; background:#fff; border-bottom:1px solid #eadfdd; display:grid; grid-template-columns:1fr auto 1fr; min-height:78px; padding:0 4.4vw; position:relative; z-index:20; }.np-logo { display:block; justify-self:start; max-width:154px; }.np-logo img { display:block; width:100%; }.np-nav { align-items:center; display:flex; gap:clamp(20px,2.3vw,42px); list-style:none; margin:0; padding:0; }.np-nav li { position:relative; }.np-nav a { display:block; font-size:12px; font-weight:600; padding:11px 0; }.np-nav > li > a::after { background:var(--np-red); bottom:2px; content:""; height:1px; left:0; position:absolute; transform:scaleX(0); transform-origin:right; transition:transform .18s cubic-bezier(.23,1,.32,1); width:100%; }.np-nav > li:hover > a::after,.np-nav > li.current-menu-item > a::after { transform:scaleX(1); transform-origin:left; }.np-nav .sub-menu { background:#fff; border:1px solid #eadfdd; box-shadow:0 16px 34px rgba(72,30,33,.13); display:none; left:-18px; list-style:none; margin:0; min-width:220px; padding:7px; position:absolute; top:100%; }.np-nav li:hover > .sub-menu,.np-nav li:focus-within > .sub-menu { display:block; }.np-nav .sub-menu a { font-size:11px; padding:10px 12px; }.np-nav .sub-menu a:hover { background:#fff3f2; }.np-tools { align-items:center; display:flex; gap:13px; justify-self:end; }.np-icon-button { align-items:center; background:transparent; border:0; color:var(--np-ink); display:inline-flex; font-size:18px; justify-content:center; min-height:34px; min-width:28px; }.np-cart { align-items:center; background:var(--np-red); border-radius:3px; color:#fff; display:inline-flex; font:400 9px var(--np-mono); gap:5px; padding:10px 11px; }.np-menu-toggle { background:transparent; border:0; display:none; font-size:22px; justify-self:start; padding:8px; }.np-mobile-menu { background:#fff; border-bottom:1px solid var(--np-line); box-shadow:0 12px 25px rgba(0,0,0,.08); display:none; left:0; padding:12px 20px 22px; position:absolute; right:0; top:100%; }.np-mobile-menu.is-open { display:block; }.np-mobile-menu .menu { list-style:none; margin:0; padding:0; }.np-mobile-menu a { border-bottom:1px solid #ece5e3; display:block; font-size:15px; font-weight:600; padding:15px 3px; }.np-mobile-menu .sub-menu { display:block; list-style:none; margin:0 0 0 14px; padding:0; }.np-mobile-menu .sub-menu a { color:#6f6566; font-size:13px; font-weight:400; padding:10px 3px; }
.np-search-drawer { background:rgba(25,18,20,.5); display:none; inset:0; padding:12vh 20px 20px; position:fixed; z-index:90; }.np-search-drawer.is-open { display:block; }.np-search-box { background:#fffdfc; box-shadow:0 25px 70px rgba(38,16,18,.26); margin:auto; max-width:660px; padding:46px; position:relative; }.np-search-close { background:transparent; border:0; font-size:22px; position:absolute; right:13px; top:11px; }.np-search-box h2 { font-size:clamp(38px,5vw,62px); letter-spacing:-.076em; line-height:.9; margin:22px 0 31px; }.np-search-box .woocommerce-product-search { display:flex; }.np-search-box input[type="search"] { border:1px solid #d8b6b7; border-right:0; flex:1; min-width:0; padding:15px; }.np-search-box button { background:var(--np-red); border:0; color:#fff; font:400 9px var(--np-mono); letter-spacing:.08em; padding:0 18px; text-transform:uppercase; }

.np-hero { background:linear-gradient(118deg,#fffdfc 0%,#fffdfc 45%,#faeeee 100%); color:var(--np-ink); min-height:650px; position:relative; }.np-hero::before { background:radial-gradient(circle at 17% 21%,rgba(186,32,39,.07),transparent 28%),linear-gradient(115deg,transparent 0 57%,rgba(186,32,39,.045) 57.2% 57.55%,transparent 57.8%); content:""; inset:0; pointer-events:none; position:absolute; }.np-hero__copy { max-width:680px; padding:89px 6vw 105px; position:relative; width:53%; z-index:2; }.np-hero h1 { font-size:clamp(48px,5vw,83px); font-weight:630; letter-spacing:-.08em; line-height:.86; margin:28px 0 30px; text-transform:uppercase; }.np-hero h1 em { color:var(--np-red); font-style:normal; }.np-hero__intro { color:#5d5557; font-size:15px; line-height:1.65; max-width:430px; }.np-hero__actions { align-items:center; display:flex; flex-wrap:wrap; gap:26px; margin-top:31px; }.np-text-link { font-size:12px; font-weight:650; text-decoration:underline; text-underline-offset:5px; }.np-hero__facts { display:flex; gap:24px; margin-top:62px; }.np-hero__facts div { border-left:1px solid rgba(90,68,70,.34); display:flex; gap:8px; padding-left:9px; }.np-hero__facts b { color:var(--np-red); font:400 9px var(--np-mono); }.np-hero__facts span { color:#6b6062; font:400 8px/1.4 var(--np-mono); letter-spacing:.05em; text-transform:uppercase; }.np-hero__stage { background:#171315 center/cover; bottom:0; box-shadow:inset 18px 0 0 #201719,inset 0 0 0 1px rgba(255,255,255,.12); overflow:hidden; position:absolute; right:0; top:0; width:52%; }.np-hero__stage::after { background:linear-gradient(90deg,rgba(23,19,21,.8),rgba(28,18,20,.18) 46%,rgba(14,13,15,.28)),radial-gradient(circle at 54% 46%,rgba(186,32,39,.19),transparent 47%); content:""; inset:0; position:absolute; }.np-hero__stage img { bottom:4%; filter:drop-shadow(0 28px 29px rgba(0,0,0,.48)); left:50%; max-height:88%; max-width:83%; object-fit:contain; position:absolute; transform:translateX(-50%); z-index:1; }.np-stage-frame { border:1px solid rgba(255,255,255,.5); bottom:58px; left:11%; position:absolute; right:9%; top:58px; z-index:2; }.np-stage-label { color:rgba(255,255,255,.9); font:400 8px var(--np-mono); letter-spacing:.11em; position:absolute; z-index:3; }.np-stage-label--top { left:11%; top:34px; }.np-stage-label--bottom { bottom:33px; display:flex; justify-content:space-between; left:9%; right:9%; }.np-stage-label--bottom span:last-child { color:#ed686f; }.np-hero__rule { align-items:center; bottom:21px; color:#766467; display:flex; font:400 8px var(--np-mono); gap:12px; left:6vw; letter-spacing:.1em; position:absolute; right:6vw; z-index:4; }.np-hero__rule::after { background:rgba(101,73,74,.32); content:""; flex:1; height:1px; }

.np-principles { background:#fff; border-bottom:1px solid var(--np-line); display:grid; grid-template-columns:repeat(4,1fr); padding:31px 5.6vw 0; position:relative; }.np-principles::before { background:var(--np-ink); content:""; height:3px; left:0; position:absolute; right:0; top:0; }.np-principles__index { align-items:center; color:#807477; display:flex; font:400 8px var(--np-mono); gap:12px; left:5.6vw; letter-spacing:.09em; position:absolute; right:5.6vw; top:12px; }.np-principles__index::after { background:#d7b9bb; content:""; flex:1; height:1px; }.np-principle { border-right:1px solid #eadfdd; min-height:112px; padding:31px 19px 27px; }.np-principle:last-child { border:0; }.np-principle b { display:block; font-size:11px; margin-bottom:7px; }.np-principle p { color:#756c6e; font-size:11px; line-height:1.45; margin:0; }
.np-catalogue { background:linear-gradient(180deg,#fffdfc 0%,#fff 83%,#fffaf9 100%); padding:112px 0 118px; position:relative; }.np-catalogue::before,.np-reference::before,.np-support::before { background:var(--np-red); content:""; height:2px; left:5.8vw; position:absolute; top:45px; transform:rotate(-37deg); width:44px; }.np-section-head { align-items:end; display:grid; gap:50px; grid-template-columns:1.2fr .8fr; }.np-section-head h2,.np-reference h2,.np-support h2,.np-standards h2 { font-size:clamp(42px,4.6vw,69px); font-weight:600; letter-spacing:-.072em; line-height:.88; margin:22px 0 0; }.np-section-head h2 em,.np-reference h2 em,.np-support h2 em,.np-standards h2 em { color:var(--np-red); font-style:normal; }.np-section-note { border-left:1px solid #deb8ba; color:var(--np-copy); font-size:14px; line-height:1.62; padding-left:21px; }.np-filter-note { display:flex; flex-wrap:wrap; gap:7px; margin:42px 0 26px; }.np-filter-note span { border:1px solid #cfd1cf; font:400 8px var(--np-mono); letter-spacing:.07em; padding:9px 11px; text-transform:uppercase; }.np-filter-note span:first-child { background:var(--np-red); border-color:var(--np-red); color:#fff; }.np-product-grid { display:grid; gap:14px; grid-template-columns:repeat(4,1fr); }.np-product-card { background:#fff; border:1px solid #ded6d5; min-width:0; overflow:hidden; position:relative; transition:box-shadow .2s ease,transform .2s ease; }.np-product-card:hover { box-shadow:0 18px 34px rgba(56,26,28,.15); transform:translateY(-4px); }.np-product-card::after { background:var(--np-red); content:""; height:1px; position:absolute; right:14px; top:12px; transform:rotate(-37deg); width:22px; }.np-card-index { color:#777d82; display:flex; font:400 8px var(--np-mono); justify-content:space-between; letter-spacing:.07em; padding:13px 14px 0; }.np-card-image { align-items:center; background:radial-gradient(circle at 50% 18%,#fff 1%,#fff7f6 65%,#f5e8e6 100%); display:flex; height:279px; justify-content:center; position:relative; }.np-product-card:nth-child(2) .np-card-image { background:radial-gradient(circle at 46% 18%,#fff 1%,#f4f3ef 66%,#ebe8e3 100%); }.np-product-card:nth-child(3) .np-card-image { background:radial-gradient(circle at 51% 18%,#fff 1%,#fff6f4 65%,#f2dddd 100%); }.np-product-card:nth-child(4) .np-card-image { background:radial-gradient(circle at 49% 18%,#fff 1%,#f2f0ed 66%,#e8e5e1 100%); }.np-card-image img { height:100%; object-fit:contain; position:relative; transition:transform .25s cubic-bezier(.23,1,.32,1); width:100%; z-index:1; }.np-product-card:hover .np-card-image img { transform:scale(1.04); }.np-card-register { color:rgba(186,32,39,.55); font:400 8px var(--np-mono); left:13px; letter-spacing:.07em; position:absolute; top:13px; z-index:2; }.np-card-copy { border-top:1px solid #efdfde; padding:15px 14px 16px; }.np-card-copy .price { color:var(--np-red); font:400 8px var(--np-mono); letter-spacing:.07em; margin:0; }.np-card-copy h3 { font-size:23px; letter-spacing:-.06em; margin:7px 0 5px; }.np-card-copy small { color:#848a8e; font:400 8px var(--np-mono); letter-spacing:.095em; }.np-card-copy .button { background:none; border:0; color:var(--np-ink); display:inline-flex; font:500 9px var(--np-mono); letter-spacing:.06em; margin-top:16px; padding:0; text-transform:uppercase; }.np-card-copy .button:hover { color:var(--np-red); }.np-empty-products { border:1px dashed #cdbbbb; color:var(--np-copy); font-size:14px; grid-column:1/-1; padding:36px; }
.np-standards { background:linear-gradient(120deg,#fffdfc 0%,#fffafa 58%,#f9e8e6 100%); display:grid; grid-template-columns:1fr 1fr; min-height:600px; position:relative; }.np-standards::after { background:repeating-linear-gradient(90deg,transparent 0 64px,rgba(186,32,39,.04) 64px 65px); content:""; inset:0; pointer-events:none; position:absolute; }.np-standards__copy { align-self:center; max-width:680px; padding:80px max(5.8vw,48px); position:relative; z-index:1; }.np-standards__copy > p { color:#5f5557; font-size:15px; line-height:1.64; }.np-standard-list { border-top:1px solid rgba(107,69,72,.28); list-style:none; margin:30px 0 29px; padding:0; }.np-standard-list li { border-bottom:1px solid rgba(107,69,72,.2); display:grid; gap:14px; grid-template-columns:28px 1fr; padding:12px 0; }.np-standard-list b { color:var(--np-red); font:400 9px var(--np-mono); }.np-standard-list span { font-size:13px; }.np-standard-list small { color:#76696a; display:block; font-size:11px; margin-top:3px; }.np-standards__visual { background:#221c1e center/cover; min-height:510px; overflow:hidden; position:relative; }.np-standards__visual::after { background:linear-gradient(90deg,rgba(22,16,18,.25),rgba(22,16,18,.63)); content:""; inset:0; position:absolute; }.np-standards__visual img { bottom:0; filter:drop-shadow(0 25px 21px rgba(0,0,0,.4)); max-height:86%; object-fit:contain; position:absolute; right:4%; width:88%; z-index:1; }.np-standards__visual p { bottom:30px; color:rgba(255,255,255,.72); font:400 8px var(--np-mono); left:8%; letter-spacing:.12em; position:absolute; z-index:2; }
.np-paths { background:#fff; display:grid; grid-template-columns:repeat(3,1fr); padding:102px 5.8vw; position:relative; }.np-paths::before { background:var(--np-red); content:""; height:2px; left:5.8vw; position:absolute; top:35px; transform:rotate(-37deg); width:44px; }.np-path { border-right:1px solid #eadfdd; padding-right:33px; }.np-path+.np-path { padding-left:33px; }.np-path:last-child { border:0; }.np-path span { color:var(--np-red); font:400 9px var(--np-mono); letter-spacing:.1em; }.np-path h3 { font-size:clamp(28px,3vw,46px); letter-spacing:-.075em; line-height:.92; margin:17px 0 15px; }.np-path p { color:#6d6465; font-size:13px; line-height:1.55; max-width:280px; }.np-path a { display:inline-flex; font-size:11px; font-weight:700; margin-top:18px; }.np-path a:hover { color:var(--np-red); }
.np-reference { background:#fffdfc; display:grid; gap:7vw; grid-template-columns:.75fr 1.25fr; padding:104px 5.8vw; position:relative; }.np-reference__intro { max-width:420px; }.np-reference__intro > p:last-child { color:#685f61; font-size:14px; line-height:1.65; }.np-reference__list { border-top:2px solid var(--np-ink); }.np-reference-item { border-bottom:1px solid #dfc9ca; display:grid; gap:22px; grid-template-columns:118px minmax(150px,.9fr) 1.2fr auto; padding:25px 0; }.np-reference-item > span { color:var(--np-red); font:400 8px var(--np-mono); letter-spacing:.09em; padding-top:5px; }.np-reference-item h3 { font-size:clamp(20px,2.2vw,30px); letter-spacing:-.06em; line-height:.95; margin:0; }.np-reference-item p { color:#6d6466; font-size:12px; line-height:1.55; margin:0; }.np-reference-item a { align-self:start; font-size:10px; font-weight:700; text-align:right; }.np-reference-item a:hover { color:var(--np-red); }
.np-support { background:#201c1e; color:#fff; display:grid; gap:9vw; grid-template-columns:.92fr 1.08fr; padding:104px 11.4vw; position:relative; }.np-support::after { background:repeating-linear-gradient(90deg,transparent 0 58px,rgba(255,255,255,.035) 58px 59px); content:""; inset:0; pointer-events:none; position:absolute; }.np-support::before { z-index:1; }.np-support__copy,.np-form-slot { position:relative; z-index:1; }.np-support h2 { margin-top:22px; }.np-support h2 em { color:#ee6269; }.np-support__copy > p:not(.np-kicker) { color:rgba(255,255,255,.64); font-size:14px; line-height:1.66; max-width:410px; }.np-support__meta { display:flex; flex-wrap:wrap; gap:10px; margin-top:32px; }.np-support__meta span { border:1px solid rgba(255,255,255,.22); color:rgba(255,255,255,.63); font:400 8px var(--np-mono); letter-spacing:.09em; padding:8px 9px; }.np-form-slot { border:1px solid rgba(255,255,255,.18); padding:34px; }.np-form-slot p { color:rgba(255,255,255,.65); font-size:14px; line-height:1.6; margin:0 0 20px; }
.np-newsletter { align-items:end; background:linear-gradient(102deg,#fffaf9 0%,#f8e7e6 100%); display:grid; gap:70px; grid-template-columns:1fr 1fr; padding:74px 11.4vw; }.np-newsletter h2 { font-size:clamp(39px,4.1vw,58px); letter-spacing:-.071em; line-height:.88; margin:22px 0 0; }.np-newsletter h2 em { color:var(--np-red); font-style:normal; }.np-newsletter .np-form-slot { border-color:#d8b6b7; }.np-newsletter .np-form-slot p { color:#675e60; }
.np-footer { background:#101114; border-top:5px solid var(--np-red); color:#fff; padding:56px 5.8vw 19px; }.np-footer__top { display:flex; justify-content:space-between; padding-bottom:52px; }.np-footer__brand { max-width:260px; }.np-footer__brand img { background:#fff; border:1px solid rgba(255,255,255,.22); display:block; padding:6px 8px; width:136px; }.np-footer__brand p { color:rgba(255,255,255,.55); font-size:11px; line-height:1.55; margin-top:18px; }.np-footer__brand a { color:#fff; display:inline-flex; font-size:11px; font-weight:700; margin-top:17px; }.np-footer__menus { display:grid; gap:55px; grid-template-columns:repeat(3,minmax(90px,1fr)); }.np-footer__menus .menu { display:grid; gap:9px; list-style:none; margin:0; padding:0; }.np-footer__menus a { color:rgba(255,255,255,.55); font-size:11px; }.np-footer__menus a:hover { color:#fff; }.np-footer__heading { color:#fff; display:block; font:400 9px var(--np-mono); letter-spacing:.1em; margin-bottom:13px; text-transform:uppercase; }.np-footer__bottom { border-top:1px solid rgba(255,255,255,.15); color:rgba(255,255,255,.4); display:flex; font:400 8px var(--np-mono); justify-content:space-between; letter-spacing:.05em; padding-top:16px; text-transform:uppercase; }
.np-page { margin:0 auto; max-width:920px; padding:90px 5vw; }.np-page h1 { font-size:clamp(42px,5vw,72px); letter-spacing:-.07em; }.np-page p,.np-page li { line-height:1.7; }.np-page a { color:var(--np-red); text-decoration:underline; }
.np-woocommerce { max-width:1260px; }.np-woocommerce .woocommerce-breadcrumb { color:var(--np-copy); font:400 9px var(--np-mono); letter-spacing:.08em; margin-bottom:28px; text-transform:uppercase; }.np-woocommerce .woocommerce-breadcrumb a { color:var(--np-red); }.np-woocommerce .woocommerce-result-count,.np-woocommerce .woocommerce-ordering { color:var(--np-copy); font-size:13px; margin-bottom:28px; }.np-woocommerce .woocommerce-ordering select { border:1px solid var(--np-line); background:#fff; padding:9px; }.np-woocommerce ul.products { display:grid; gap:14px; grid-template-columns:repeat(4,1fr); margin:0; }.np-woocommerce ul.products li.product { background:#fff; border:1px solid #ded6d5; float:none; margin:0; padding:13px; width:auto; }.np-woocommerce ul.products li.product a img { background:#fff7f6; margin:0 0 16px; padding:8px; }.np-woocommerce ul.products li.product .woocommerce-loop-product__title { color:var(--np-ink); font-size:20px; letter-spacing:-.05em; padding:0; }.np-woocommerce ul.products li.product .price { color:var(--np-red); font:400 11px var(--np-mono); margin:10px 0; }.np-woocommerce .button,.np-woocommerce button,.np-woocommerce input[type="submit"] { background:var(--np-red); border:0; border-radius:0; color:#fff; font:500 10px var(--np-mono); letter-spacing:.06em; padding:13px 15px; text-transform:uppercase; }.np-woocommerce .button:hover,.np-woocommerce button:hover,.np-woocommerce input[type="submit"]:hover { background:var(--np-red-dark); color:#fff; }.np-woocommerce div.product .product_title { font-size:clamp(36px,4vw,58px); letter-spacing:-.07em; }.np-woocommerce div.product p.price,.np-woocommerce div.product span.price { color:var(--np-red); font:400 15px var(--np-mono); }.np-woocommerce div.product .woocommerce-product-details__short-description { color:var(--np-copy); line-height:1.7; }.np-woocommerce .quantity .qty { border:1px solid var(--np-line); min-height:42px; padding:0 8px; }.np-woocommerce table.shop_table { border:1px solid var(--np-line); border-radius:0; }.np-woocommerce .woocommerce-info,.np-woocommerce .woocommerce-message { border-top-color:var(--np-red); }.np-woocommerce .woocommerce-info::before,.np-woocommerce .woocommerce-message::before { color:var(--np-red); }
@keyframes np-ticker { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms!important; scroll-behavior:auto!important; transition-duration:.01ms!important; } }
@media (max-width:900px) { .np-header { padding:0 18px; }.np-menu-toggle { display:block; }.np-nav { display:none; }.np-logo { justify-self:center; max-width:132px; }.np-tools { gap:4px; }.np-tools .np-icon-button:not([data-search-toggle]) { display:none; }.np-hero { min-height:0; }.np-hero__copy { padding:60px 22px 50px; width:100%; }.np-hero h1 { font-size:clamp(45px,13.7vw,62px); }.np-hero__stage { height:368px; position:relative; width:100%; }.np-hero__stage img { max-height:94%; }.np-stage-frame { bottom:34px; left:9%; right:9%; top:34px; }.np-stage-label--top { left:9%; top:16px; }.np-stage-label--bottom { bottom:16px; left:7%; right:7%; }.np-hero__rule { display:none; }.np-principles { grid-template-columns:1fr 1fr; padding:34px 18px 0; }.np-principle { border-bottom:1px solid #eadfdd; min-height:106px; padding:25px 11px 22px 0; }.np-principle:nth-child(2n+1) { border-right:0; padding-left:12px; }.np-principle:nth-last-child(-n+2) { border-bottom:0; }.np-principles__index { left:18px; right:18px; }.np-catalogue { padding:82px 0 76px; }.np-wrap { padding:0 18px; }.np-section-head { display:block; }.np-section-head h2 { font-size:48px; }.np-section-note { font-size:13px; margin-top:28px; padding-left:13px; }.np-filter-note { flex-wrap:nowrap; overflow-x:auto; }.np-filter-note span { flex:none; }.np-product-grid { gap:9px; grid-template-columns:1fr 1fr; }.np-card-image { height:196px; }.np-card-index { font-size:7px; padding:10px 10px 0; }.np-card-index span:last-child { display:none; }.np-card-copy { padding:11px 10px 13px; }.np-card-copy h3 { font-size:19px; }.np-standards,.np-reference,.np-support,.np-newsletter { display:block; }.np-standards__copy,.np-reference,.np-support,.np-newsletter { padding:72px 22px; }.np-standards h2,.np-reference h2,.np-support h2,.np-newsletter h2 { font-size:45px; }.np-standards__visual { min-height:370px; }.np-paths { display:block; padding:78px 22px 40px; }.np-path { border-bottom:1px solid #eadfdd; border-right:0; padding:31px 0!important; }.np-path:last-child { border-bottom:0; }.np-reference__list { margin-top:40px; }.np-reference-item { display:block; padding:23px 0; }.np-reference-item h3 { font-size:28px; margin:12px 0; }.np-reference-item a { display:inline-block; margin-top:16px; text-align:left; }.np-form-slot { margin-top:38px; padding:25px; }.np-newsletter .np-form-slot { margin-top:35px; }.np-footer { padding:47px 22px 18px; }.np-footer__top { flex-direction:column; gap:39px; padding-bottom:37px; }.np-footer__menus { gap:27px; grid-template-columns:repeat(2,1fr); }.np-footer__bottom { flex-direction:column; gap:9px; line-height:1.5; }.np-search-box { padding:38px 22px 27px; }.np-search-box .woocommerce-product-search { flex-direction:column; }.np-search-box button { min-height:48px; } }
@media (max-width:900px) { .np-woocommerce { padding:50px 18px; }.np-woocommerce ul.products { grid-template-columns:1fr 1fr; }.np-woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:17px; } }
