/*
Theme Name: GMP – Global Managed Properties
Theme URI: https://globalmanagedproperties.com
Author: Global Managed Properties
Description: Fast, lightweight editorial theme for Global Managed Properties. Built on native WordPress blocks: every text and image is editable in the page editor, no page builder required.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: gmp
*/

/* ---------- Fonts (self-hosted, no external requests) ---------- */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/cormorant-garamond-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/cormorant-garamond-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400;font-display:swap;src:url(assets/fonts/cormorant-garamond-latin-400-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400;font-display:swap;src:url(assets/fonts/cormorant-garamond-latin-ext-400-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/inter-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/inter-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/inter-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/inter-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/inter-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/inter-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ---------- Design tokens (change colours here) ---------- */
:root{
  --green:#1f3f3a;        /* dark green: footer, loader, menu overlay, dark bands */
  --green-2:#2a4c46;
  --ink:#23443e;          /* headings */
  --text:#56635f;         /* body text */
  --muted:#7f8a86;        /* eyebrows, small text */
  --cream:#f6f5f0;        /* page background */
  --paper:#fbfaf6;        /* cards */
  --line:#dcdbd2;         /* hairlines */
  --nav:#c4cac5;          /* menu bar when overlay is open */
  --on-dark:#d5dcd8;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --max:1180px;
  --gutter:clamp(20px,5vw,48px);
  --section:clamp(72px,9vw,124px);
  --header-h:64px;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
html.np-lock{overflow:hidden}
body{margin:0;background:var(--cream);color:var(--text);font:400 15px/1.65 var(--sans);-webkit-font-smoothing:antialiased;padding-top:var(--header-h)}
body.has-hero{padding-top:0}
h1,h2,h3,h4,h5,h6,p,figure,blockquote,ul,ol{margin:0}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;color:var(--ink);line-height:1.08;letter-spacing:-.005em}
h1{font-size:clamp(52px,7.4vw,104px);line-height:.98}
h2{font-size:clamp(34px,3.7vw,52px)}
h3{font-size:clamp(22px,2vw,28px)}
h4{font-size:20px}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
img,video{max-width:100%;height:auto;display:block}
strong{font-weight:600;color:var(--ink)}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.skip-link:focus{clip:auto;clip-path:none;height:auto;width:auto;left:12px;top:12px;z-index:200;background:var(--cream);padding:10px 16px;color:var(--ink)}

/* ---------- Loader (word-changing intro) ---------- */
.np-loader{position:fixed;inset:0;z-index:300;background:var(--green);display:grid;place-items:center;pointer-events:none;
  animation:npLoaderOut .9s cubic-bezier(.76,0,.24,1) forwards;animation-delay:calc((var(--n) - 1)*.55s + 1s)}
.np-loader__word{grid-area:1/1;font-family:var(--serif);font-size:clamp(26px,3vw,40px);color:var(--cream);opacity:0;letter-spacing:.01em;
  animation:npWord .62s ease both;animation-delay:calc(var(--i)*.55s + .15s)}
.np-loader__word--brand{font-size:clamp(34px,4.4vw,60px);animation:npBrand .8s ease forwards;animation-delay:calc(var(--i)*.55s + .15s)}
@keyframes npWord{0%{opacity:0;transform:translateY(10px)}30%,70%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-8px)}}
@keyframes npBrand{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:none}}
@keyframes npLoaderOut{to{transform:translateY(-100%);visibility:hidden}}
html.np-no-loader .np-loader{display:none}

/* ---------- Header ---------- */
.np-header{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--header-h);background:var(--cream);border-bottom:1px solid var(--line);transition:background .35s,color .35s,border-color .35s}
.admin-bar .np-header{top:32px}
@media (max-width:782px){.admin-bar .np-header{top:46px}}
.np-header__bar{display:flex;height:100%;font:500 13px/1 var(--sans);color:var(--ink)}
.np-header__logo{flex:0 0 88px;display:grid;place-items:center;text-decoration:none;font:400 22px/1 var(--serif);letter-spacing:.04em;border-right:1px solid var(--line)}
.np-header__logo img{max-height:34px;width:auto}
.np-header__nav{flex:1;display:flex}
.np-menu{list-style:none;margin:0;padding:0;display:flex;flex:1}
.np-menu li{flex:1;display:flex;border-right:1px solid var(--line)}
.np-menu a{flex:1;display:grid;place-items:center;text-decoration:none;padding:0 10px;text-align:center;transition:background .25s}
.np-menu a:hover,.np-menu .current-menu-item>a{background:rgba(35,68,62,.06)}
.np-header__lang{display:flex;align-items:center;padding:0 22px;border-right:1px solid var(--line)}
.np-header__lang ul{list-style:none;display:flex;gap:10px;margin:0;padding:0}
.np-header__lang .current-lang a{text-decoration:underline}
.np-header__lang a{text-decoration:none}
.np-header__toggle{flex:0 0 64px;background:none;border:0;color:inherit;cursor:pointer;display:grid;place-items:center;padding:0}
.np-burger,.np-burger::before,.np-burger::after{display:block;width:18px;height:1px;background:currentColor;transition:transform .35s,opacity .35s}
.np-burger{position:relative}
.np-burger::before,.np-burger::after{content:"";position:absolute;left:0}
.np-burger::before{top:-6px}.np-burger::after{top:6px}
.np-header__toggle[aria-expanded="true"] .np-burger{background:transparent}
.np-header__toggle[aria-expanded="true"] .np-burger::before{transform:translateY(6px) rotate(45deg);width:24px}
.np-header__toggle[aria-expanded="true"] .np-burger::after{transform:translateY(-6px) rotate(-45deg);width:24px}
/* transparent header over the home hero */
.has-hero .np-header:not(.is-scrolled):not(.is-open){background:transparent;border-color:rgba(255,255,255,.18);color:#fff}
.has-hero .np-header:not(.is-scrolled):not(.is-open) .np-header__bar{color:#fff}
.has-hero .np-header:not(.is-scrolled):not(.is-open) .np-header__logo,
.has-hero .np-header:not(.is-scrolled):not(.is-open) .np-menu li,
.has-hero .np-header:not(.is-scrolled):not(.is-open) .np-header__lang{border-color:rgba(255,255,255,.18)}
.np-header.is-open{background:var(--nav);border-color:rgba(35,68,62,.15)}
.np-header.is-open .np-header__logo,.np-header.is-open .np-menu li,.np-header.is-open .np-header__lang{border-color:rgba(35,68,62,.15)}
@media (max-width:960px){
  .np-header__nav,.np-header__lang{display:none}
  .np-header__bar{justify-content:space-between}
  .np-header__logo{border-right:0}
}

/* ---------- Fullscreen menu overlay ---------- */
.np-overlay{position:fixed;inset:0;z-index:90;background:var(--green);color:var(--cream);padding:calc(var(--header-h) + clamp(40px,10vh,140px)) max(var(--gutter),calc((100% - var(--max))/2)) 48px;overflow-y:auto;
  opacity:0;visibility:hidden;transition:opacity .45s ease,visibility 0s linear .45s}
.np-overlay.is-open{opacity:1;visibility:visible;transition:opacity .45s ease}
.np-overlay__menu{list-style:none;margin:0;padding:0}
.np-overlay__menu li{border-bottom:1px solid rgba(246,245,240,.14);opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
.np-overlay.is-open .np-overlay__menu li{opacity:1;transform:none}
.np-overlay.is-open .np-overlay__menu li:nth-child(2){transition-delay:.05s}
.np-overlay.is-open .np-overlay__menu li:nth-child(3){transition-delay:.1s}
.np-overlay.is-open .np-overlay__menu li:nth-child(4){transition-delay:.15s}
.np-overlay.is-open .np-overlay__menu li:nth-child(5){transition-delay:.2s}
.np-overlay.is-open .np-overlay__menu li:nth-child(6){transition-delay:.25s}
.np-overlay.is-open .np-overlay__menu li:nth-child(n+7){transition-delay:.3s}
.np-overlay__menu a{display:block;font:400 clamp(40px,6.4vw,92px)/1.12 var(--serif);text-decoration:none;padding:.08em 0 .1em;transition:padding .35s,opacity .35s}
.np-overlay__menu a:hover{padding-left:.25em;opacity:.8}
.np-overlay__meta{display:flex;flex-wrap:wrap;gap:12px 36px;margin-top:40px;font-size:13px;color:var(--on-dark)}
.np-overlay__meta a{text-decoration:none}

/* ---------- Page content: shared section system ---------- */
.np-content > *{margin:0}
.np-content .wp-block-group > *,.np-content .wp-block-image{margin:0}
.np-content .wp-block-group{display:grid;gap:16px;align-content:start}
.np-content > .wp-block-group{padding:var(--section) max(var(--gutter),calc((100% - var(--max))/2));gap:clamp(32px,4vw,56px)}
.np-content > .wp-block-group + .wp-block-group{border-top:1px solid var(--line)}
.np-content .wp-block-image img{width:100%;object-fit:cover}
.np-content p a{color:var(--ink)}

.np-eyebrow{font:600 10.5px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.np-lead{font-size:15px;color:var(--ink)}
.np-small{font-size:13px;color:var(--muted)}
.np-statement{font-size:clamp(36px,3.9vw,54px);line-height:1.08}
.np-display{font-size:clamp(52px,7.4vw,104px);line-height:.98}

/* links with arrow */
.np-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:6px!important}
.np-links a,.np-content .np-links a{font:600 10.5px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--ink);text-decoration:none;padding-bottom:7px;border-bottom:1px solid currentColor;transition:opacity .25s}
.np-links a::after{content:" \2192"}
.np-links a:hover{opacity:.65}

/* buttons */
.np-content .wp-block-buttons{display:flex;flex-wrap:wrap;gap:10px}
.np-content .wp-block-button__link,.np-btn{display:inline-block;background:transparent;color:var(--ink);border:1px solid var(--ink);border-radius:0;font:600 10.5px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;padding:14px 22px;text-decoration:none;transition:background .25s,color .25s;cursor:pointer}
.np-content .wp-block-button__link:hover,.np-btn:hover{background:var(--ink);color:var(--cream)}
.np-content .is-style-fill .wp-block-button__link{background:var(--ink);color:var(--cream)}

/* ---------- Home hero ---------- */
.np-content > .np-hero{position:relative;min-height:min(100svh,940px);padding:0;display:grid;grid-template-columns:1fr minmax(300px,480px);align-items:end;align-content:end;gap:0;overflow:hidden;color:#fff;isolation:isolate}
.np-hero > .wp-block-image,.np-hero > .wp-block-video,.np-hero > .wp-block-cover{position:absolute!important;inset:0;z-index:-1;height:100%}
.np-hero > .wp-block-image img,.np-hero > .wp-block-video video{width:100%;height:100%;object-fit:cover}
.np-hero > .wp-block-image::after,.np-hero > .wp-block-video::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,32,29,.45) 0%,rgba(20,32,29,.25) 40%,rgba(20,32,29,.6) 100%)}
.np-hero__title{padding:0 32px clamp(80px,12vh,150px) max(var(--gutter),calc((100% - var(--max))/2))}
.np-hero__title h1{color:#fff;font-size:clamp(46px,6.2vw,92px);line-height:1;max-width:11ch}
.np-hero__card{background:var(--cream);color:var(--text);padding:clamp(24px,3vw,38px);gap:12px!important;font-size:13px;margin-bottom:clamp(40px,8vh,96px)!important}
.np-hero__card .np-lead{font-size:14px}
.np-hero__scroll{position:absolute;left:max(var(--gutter),calc((100% - var(--max))/2));bottom:28px;font:600 10px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;display:flex;align-items:center;gap:10px}
.np-hero__scroll::after{content:"\2193";display:grid;place-items:center;width:22px;height:22px;border:1px solid rgba(255,255,255,.6);border-radius:50%;font-size:11px}
@media (max-width:860px){
  .np-content > .np-hero{grid-template-columns:1fr;align-content:end;min-height:92svh}
  .np-hero__title{padding:120px var(--gutter) 28px}
  .np-hero__card{margin:0 var(--gutter) 70px!important}
}

/* ---------- Inner page hero ---------- */
.np-content > .np-page-hero{position:relative;gap:22px;padding-top:clamp(64px,8vw,110px)}
.np-page-hero::before{content:"";position:absolute;top:0;bottom:0;left:max(14px,calc((100% - var(--max))/2 - 56px));width:1px;background:var(--line)}
.np-page-hero > .np-page-hero__intro{justify-self:end;max-width:330px;border-left:1px solid var(--line);padding-left:16px;font-size:13.5px;color:var(--ink);margin:18px 0 10px!important}
.np-page-hero > .wp-block-image img{aspect-ratio:2.9/1}
.np-page-hero > .wp-block-buttons{margin-top:4px!important}
.np-page-hero--simple{padding-bottom:40px!important}
@media (max-width:760px){
  .np-page-hero::before{display:none}
  .np-page-hero > .np-page-hero__intro{justify-self:start}
  .np-page-hero > .wp-block-image img{aspect-ratio:4/3}
}

/* ---------- Split: statement left, list right ---------- */
.np-content > .np-split{grid-template-columns:5fr 6fr;column-gap:clamp(40px,7vw,110px)}
.np-split__body{gap:24px!important}
.np-split > .np-step-grid,.np-split > .np-cards{grid-column:1/-1}
.np-items{border-left:1px solid var(--line);border-top:1px solid var(--line);gap:0!important}
.np-item{padding:18px 12px 16px 14px;border-bottom:1px solid var(--line);gap:6px!important}
.np-item h3{font-size:24px}
.np-item p{font-size:12.5px;color:var(--muted)}

/* ---------- Feature: text + image, then cards ---------- */
.np-content > .np-feature{grid-template-columns:1.35fr 1fr;align-items:start}
.np-feature--reverse > .wp-block-image{order:-1}
.np-content > .np-feature.np-feature--reverse{grid-template-columns:1fr 1.35fr}
.np-feature > .np-cards{grid-column:1/-1}
.np-feature > .wp-block-image img{aspect-ratio:4/3}
.np-feature__text{gap:18px!important;max-width:560px}
.np-check{position:relative;padding:11px 0 11px 18px;border-top:1px solid var(--line);font:600 12.5px/1.4 var(--sans);color:var(--ink)}
.np-check::before{content:"";position:absolute;left:0;top:16px;width:6px;height:6px;background:var(--ink)}
.np-check + .np-check{margin-top:-16px!important}

/* bordered cards */
.np-cards{grid-template-columns:repeat(3,1fr);gap:0!important;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.np-cards--4{grid-template-columns:repeat(4,1fr)}
.np-cards--2{grid-template-columns:repeat(2,1fr)}
.np-card{padding:20px 20px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);gap:8px!important}
.np-card h3{font:600 15px/1.35 var(--sans);color:var(--ink);letter-spacing:0}
.np-card p{font-size:12.5px;color:var(--muted)}

/* ---------- Media: image with caption + rows ---------- */
.np-content > .np-media{grid-template-columns:1fr 1fr;column-gap:clamp(32px,6vw,80px);align-items:center}
.np-media--reverse > .wp-block-image{order:2}
.np-media > .wp-block-image{position:relative}
.np-media > .wp-block-image img{aspect-ratio:4/5}
.np-media .wp-element-caption{position:absolute;left:0;right:0;bottom:0;margin:0;background:rgba(246,245,240,.92);padding:14px 18px;font:400 10px/1.6 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:left}
.np-media .wp-element-caption strong{display:block;font-size:12px;letter-spacing:0;text-transform:none;color:var(--ink)}
.np-media__text{gap:18px!important;max-width:470px}
.np-rows{gap:0!important;border-bottom:1px solid var(--line);margin-top:6px!important}
.np-row{padding:16px 0;border-top:1px solid var(--line);gap:4px!important}
.np-row h3{font:500 15.5px/1.35 var(--sans);color:var(--ink);letter-spacing:0}
.np-row p{font-size:12.5px;color:var(--muted)}

/* ---------- Steps / scope (numbered cells) ---------- */
.np-content > .np-steps{grid-template-columns:1.5fr 1fr;align-items:end}
.np-steps > .np-steps__text:first-child{grid-column:1/-1;max-width:760px}
.np-steps > .wp-block-image img{aspect-ratio:2.2/1}
.np-steps__text{gap:16px!important}
.np-steps > .np-step-grid{grid-column:1/-1}
.np-step-grid{grid-template-columns:repeat(4,1fr);gap:0!important;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.np-step{padding:22px 20px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);gap:10px!important}
.np-step .np-num{font:500 10px/1 var(--sans);color:var(--muted);letter-spacing:.08em}
.np-step h3{font-size:24px}
.np-step p{font-size:12.5px;color:var(--muted)}

/* ---------- Stats ---------- */
.np-stat-grid{grid-template-columns:repeat(3,1fr);gap:0!important;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.np-stat{padding:26px 22px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);gap:12px!important}
.np-stat__num{font:400 clamp(46px,5vw,68px)/1 var(--serif);color:var(--ink)}
.np-stat p:not(.np-stat__num){font-size:12.5px;color:var(--muted)}

/* ---------- Accordion ---------- */
.np-content > .np-acc{grid-template-columns:1.3fr 1fr;column-gap:clamp(32px,6vw,90px);align-items:start}
.np-acc > .np-acc__head{grid-column:1/-1;max-width:720px}
.np-acc > .wp-block-image{position:sticky;top:calc(var(--header-h) + 24px)}
.np-acc > .wp-block-image img{aspect-ratio:4/5}
.np-acc__list{gap:0!important;border-top:1px solid var(--line)}
.np-content .wp-block-details{border-bottom:1px solid var(--line);padding:22px 0}
.np-content .wp-block-details summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;font:400 clamp(24px,2.3vw,32px)/1.15 var(--serif);color:var(--ink)}
.np-content .wp-block-details summary::-webkit-details-marker{display:none}
.np-content .wp-block-details summary::after{content:"+";font:300 22px/1 var(--sans);color:var(--ink)}
.np-content .wp-block-details[open] summary::after{content:"\2013"}
.np-content .wp-block-details > *:not(summary){margin-top:12px!important;font-size:13px;max-width:520px}

/* ---------- Marquee ---------- */
.np-content > .np-marquee{padding-inline:0;overflow:hidden;gap:28px}
.np-marquee > .np-eyebrow{padding-inline:max(var(--gutter),calc((100% - var(--max))/2))}
.np-marquee__track{white-space:nowrap;font:400 clamp(52px,7.5vw,104px)/1.1 var(--serif);color:var(--ink);overflow:hidden}
.np-marquee__inner{display:inline-flex;animation:npMarquee 38s linear infinite}
.np-marquee__set{display:inline-flex;gap:.9em;padding-right:.9em}
.np-marquee__set span:nth-child(even){font-style:italic;color:var(--muted)}
@keyframes npMarquee{to{transform:translateX(-50%)}}

/* ---------- Dark band ---------- */
.np-content > .np-dark{background:var(--green);color:var(--on-dark);grid-template-columns:1fr 1fr;column-gap:clamp(32px,6vw,90px)}
.np-content > .np-dark + .wp-block-group,.np-content > .wp-block-group + .np-dark{border-top:0}
.np-dark h2,.np-dark h3,.np-dark strong{color:var(--cream)}
.np-dark .np-eyebrow{color:rgba(213,220,216,.7)}
.np-dark > .np-cards{grid-column:1/-1}
.np-dark .np-cards,.np-dark .np-card{border-color:rgba(246,245,240,.16);background:transparent}
.np-dark .np-card h3{font:400 24px/1.2 var(--serif);color:var(--cream)}
.np-dark .np-card p{color:var(--on-dark)}

/* ---------- Simple block (head + cards/rows) ---------- */
.np-block__head{gap:14px!important;max-width:820px}

/* ---------- Collection (stays) ---------- */
.np-stays{grid-template-columns:repeat(4,1fr);gap:clamp(16px,2vw,24px)!important}
.np-stay{gap:10px!important;align-content:start}
.np-stay .wp-block-image img{aspect-ratio:4/5;transition:transform .8s ease}
.np-stay .wp-block-image{overflow:hidden}
.np-stay:hover .wp-block-image img{transform:scale(1.03)}
.np-stay h3{font-size:26px}
.np-stay p{font-size:12.5px}
.np-price{font-size:13px!important;color:var(--ink)}
.np-price strong{font:400 23px/1 var(--serif)}

/* ---------- Quote ---------- */
.np-content > .np-quote{text-align:center;justify-items:center}
.np-quote .wp-block-quote{border:0;padding:0;margin:0;max-width:900px;display:grid;gap:22px}
.np-quote .wp-block-quote p{font:italic 400 clamp(30px,3.8vw,52px)/1.15 var(--serif);color:var(--ink)}
.np-quote .wp-block-quote cite{font:600 10.5px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-style:normal}

/* ---------- CTA line ---------- */
.np-content > .np-cta{grid-template-columns:1fr auto;align-items:center}
.np-cta p{font:400 clamp(22px,2.2vw,30px)/1.3 var(--serif);color:var(--ink);max-width:640px}

/* ---------- Contact ---------- */
.np-content > .np-contact{grid-template-columns:1fr 1.25fr;column-gap:clamp(32px,6vw,90px);align-items:start}
.np-contact__info{gap:18px!important}
.gmp-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;background:var(--paper);border:1px solid var(--line);padding:clamp(22px,3vw,36px)}
.gmp-form .full{grid-column:1/-1}
.gmp-form label{display:grid;gap:6px;font:600 10px/1.3 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.gmp-form input,.gmp-form select,.gmp-form textarea{width:100%;font:400 15px/1.4 var(--sans);color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:8px 0;letter-spacing:0;text-transform:none}
.gmp-form textarea{min-height:110px;resize:vertical}
.gmp-form input:focus,.gmp-form select:focus,.gmp-form textarea:focus{outline:0;border-bottom-color:var(--ink)}
.gmp-form .gmp-hp{position:absolute;left:-9999px;opacity:0}
.gmp-form .np-small{text-transform:none;letter-spacing:0;font-weight:400}
.gmp-notice{grid-column:1/-1;padding:14px 16px;border:1px solid var(--ink);color:var(--ink);font-size:14px}
.gmp-notice--error{border-color:#9b3b2f;color:#9b3b2f}

/* ---------- Plain pages / posts ---------- */
.np-prose{max-width:760px;margin:0 auto;padding:0 var(--gutter) var(--section)}
.np-prose > * + *{margin-top:1.1em}
.np-prose h2{font-size:clamp(30px,3vw,40px);margin-top:1.6em}
.np-prose h3{margin-top:1.4em}
.np-prose ul,.np-prose ol{padding-left:1.2em}
.np-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:var(--max);margin:0 auto;padding:0 var(--gutter) var(--section)}
.np-post-card{display:grid;gap:10px;text-decoration:none}
.np-post-card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.np-post-card h2{font-size:26px}
.np-pagination{grid-column:1/-1;display:flex;gap:16px;font-size:13px}

/* ---------- Footer ---------- */
.np-footer{background:var(--green);color:var(--on-dark);font-size:13px}
.np-footer a{text-decoration:none}
.np-footer a:hover{text-decoration:underline}
.np-footer__inner{max-width:var(--max);margin:0 auto;padding:clamp(56px,7vw,90px) var(--gutter) 50px;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
.np-footer__brand{font:400 clamp(34px,3.6vw,46px)/1 var(--serif);color:var(--cream);margin-bottom:14px}
.np-footer__about{max-width:340px;margin-bottom:18px}
.np-footer address{font-style:normal;font-size:12px;line-height:1.7;color:rgba(213,220,216,.8)}
.np-footer h2{font:600 10px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:rgba(213,220,216,.6);margin-bottom:18px}
.np-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.np-footer__social{display:flex!important;flex-wrap:wrap;gap:8px 16px!important;margin-top:16px!important}
.np-footer__bottom{max-width:var(--max);margin:0 auto;padding:22px var(--gutter);border-top:1px solid rgba(246,245,240,.14);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:12px}
.np-footer__bottom ul{display:flex;gap:18px}

/* ---------- Scroll reveal ---------- */
.js .np-reveal{opacity:0;transform:translateY(18px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.js .np-reveal.is-in{opacity:1;transform:none}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .np-stays{grid-template-columns:repeat(2,1fr)}
  .np-cards--4,.np-step-grid{grid-template-columns:repeat(2,1fr)}
  .np-footer__inner{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .np-content > .np-split,.np-content > .np-feature,.np-content > .np-feature.np-feature--reverse,.np-content > .np-media,
  .np-content > .np-steps,.np-content > .np-acc,.np-content > .np-dark,.np-content > .np-contact,.np-content > .np-cta{grid-template-columns:1fr}
  .np-media--reverse > .wp-block-image{order:0}
  .np-acc > .wp-block-image{position:static}
  .np-cards{grid-template-columns:1fr 1fr}
  .np-posts{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  body{font-size:14.5px}
  .np-cards,.np-cards--4,.np-cards--2,.np-step-grid,.np-stays,.np-posts{grid-template-columns:1fr}
  .np-stat-grid{grid-template-columns:1fr 1fr}
  .np-media > .wp-block-image img,.np-acc > .wp-block-image img{aspect-ratio:4/3}
  .gmp-form{grid-template-columns:1fr}
  .np-footer__inner{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .np-loader{display:none}
  .np-marquee__inner{animation:none}
}
