/* =====================================================================
   UNIVERSAL SWORDS — site stylesheet
   Cream parchment pages, near-black bands and brushed gold.
   ===================================================================== */

:root{
  --ink:#0e0c09;            /* top bar, dark bands */
  --ink-2:#15110c;          /* cards, buttons */
  --ink-3:#221b13;
  --paper:#f2e9da;          /* page background */
  --paper-2:#f7f1e6;        /* cards, inputs */
  --paper-3:#ece2cf;        /* sidebar */
  --line:#d9cab0;
  --line-2:#e4d8c3;
  --gold:#c8a15a;
  --gold-lt:#e4c47f;
  --gold-dk:#9d7638;
  --gold-grad:linear-gradient(180deg,#e7c985 0%,#d0a960 48%,#b88c45 100%);
  --text:#2b2116;
  --text-2:#4a3d2e;
  --muted:#76664f;
  --cream:#f3e7d0;
  --cream-2:#d9ccb6;

  --serif:'Source Serif 4','Source Serif Pro',Georgia,'Times New Roman',serif;
  --display:'Cinzel',Georgia,serif;
  --italic:'Cormorant Garamond',Georgia,serif;

  --side-w:214px;
  --gut:38px;
  --gut-l:36px;   /* the layouts sit a little further in on the right */
  --gut-r:63px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--serif);font-size:17px;line-height:1.5;color:var(--text);
  background:var(--paper) url('paper.jpg') repeat;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3,h4,h5{margin:0;font-weight:500}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
input,select,textarea{font:inherit;color:inherit}
[hidden]{display:none!important}

.wrap{max-width:1460px;margin:0 auto;padding:0 var(--gut)}
.arr{display:inline-block;font-family:var(--serif);font-size:1.15em;line-height:1;transform:translateY(-.04em);margin-left:.35em}

/* -------------------------------------------------------- buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:45px;padding:0 26px;
  font-family:var(--serif);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  border:1px solid transparent;border-radius:1px;transition:filter .2s,background-color .2s,color .2s,border-color .2s;white-space:nowrap}
.btn svg{width:20px;height:20px}
.btn-gold{background:var(--gold-grad);color:#24180b;border-color:#b78b45;box-shadow:inset 0 1px 0 rgba(255,240,200,.45)}
.btn-gold:hover{filter:brightness(1.07)}
.btn-line{border-color:var(--gold);color:var(--gold-lt)}
.btn-line:hover{background:rgba(200,161,90,.12)}
.btn-dark{background:var(--ink-2);color:var(--gold-lt);border-color:var(--ink-2)}
.btn-dark:hover{background:#2a2117}
.btn-sm{height:34px;padding:0 18px;font-size:11px}

/* -------------------------------------------------------- eyebrows */
.eyebrow{display:inline-block;font-family:var(--display);font-size:11.5px;font-weight:400;letter-spacing:.32em;text-transform:uppercase;color:#8a6936}
.eyebrow.orn{display:inline-flex;align-items:center;gap:14px}
.eyebrow.orn::before,.eyebrow.orn::after{content:"";width:64px;height:9px;
  background:linear-gradient(currentColor,currentColor) center/100% 1px no-repeat;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 9'%3E%3Cpath d='M0 4.5h50' stroke='%23000'/%3E%3Cpath d='M50 4.5l5-3.5 5 3.5-5 3.5z' fill='%23000'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 9'%3E%3Cpath d='M0 4.5h50' stroke='%23000'/%3E%3Cpath d='M50 4.5l5-3.5 5 3.5-5 3.5z' fill='%23000'/%3E%3C/svg%3E") center/contain no-repeat;
  background:currentColor}
.eyebrow.orn::after{transform:scaleX(-1)}

/* ======================================================== TOP BAR */
/* Measured from the approved layouts (desktop ≈ 1240px wide). */
.topbar{background:var(--ink);color:#d0aa62;font-family:var(--display);font-size:10.9px;letter-spacing:.085em;text-transform:uppercase}
.topbar-in{height:33px;padding:0 var(--gut-r) 0 var(--gut-l);display:flex;align-items:center;justify-content:space-between;gap:20px}
.tb-left{display:flex;align-items:center;gap:15px;white-space:nowrap}
.tb-left i{width:1px;height:13px;background:rgba(201,163,91,.6)}
.tb-right{display:flex;align-items:center;gap:22px}
.tb-export{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.tb-export svg{width:17px;height:17px}
.tb-rule{width:1px;height:13px;background:rgba(201,163,91,.55)}
.tb-social{display:flex;align-items:center;gap:20px;color:#d0aa62}
.tb-social a{width:17px;height:17px;transition:color .2s}
.tb-social a:hover{color:var(--gold-lt)}
.tb-social svg{width:100%;height:100%}

/* ========================================================= HEADER */
.site-head{position:relative;z-index:40;background:#f3ece0 url('paper.jpg') repeat;border-bottom:1px solid #e0d3bb}
.head-in{height:88px;padding:0 var(--gut-r) 0 var(--gut-l);display:flex;align-items:center}
.logo{display:flex;align-items:center;gap:11px;flex:0 0 auto;margin-right:auto}
.logo .crest{width:111px;height:74px;object-fit:contain}
.logo .lt{display:flex;flex-direction:column;align-items:center}
.logo .nm{font-family:var(--display);font-size:26.4px;line-height:1;font-weight:500;letter-spacing:0;color:#16100a;white-space:nowrap}
.logo .sub{margin-top:6px;font-family:var(--serif);font-size:8.6px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#2b2015;white-space:nowrap}

.mainnav{display:flex;align-items:center;gap:15px;height:100%;margin-left:30px}
.nav-item{position:relative;height:100%;display:flex;align-items:center}
.mainnav a{font-family:var(--serif);font-size:10.6px;font-weight:500;letter-spacing:-.005em;font-variation-settings:'opsz' 32;text-transform:uppercase;color:#231a10;white-space:nowrap;transition:color .2s}
.nav-item>a{position:relative;display:flex;align-items:center;gap:4px;padding:6px 0}
.nav-item>a::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:2px;background:#7a5526;transform:scaleX(0);transition:transform .25s}
.nav-item>a:hover{color:#7a5526}
.nav-item>a.active::after,.nav-item>a:hover::after{transform:scaleX(1)}
.caret{width:7px;height:5px}
.drop{position:absolute;top:100%;left:-18px;min-width:230px;padding:10px 0;background:#f8f2e7;border:1px solid var(--line);border-top:2px solid var(--gold);
  box-shadow:0 18px 36px -18px rgba(30,20,8,.45);opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s}
.has-drop:hover .drop,.has-drop:focus-within .drop{opacity:1;visibility:visible;transform:none}
.drop a{display:block;padding:7px 20px;font-size:12px}
.drop a:hover{background:rgba(200,161,90,.14)}

.search-btn{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;color:#231a10;margin-left:12px}
.search-btn svg{width:19px;height:19px}
.head-btn{height:38px;width:132px;flex:0 0 132px;padding:0;margin-left:20px;font-family:var(--serif);font-size:11px;font-weight:600;letter-spacing:.04em;gap:0}
.menu-btn{display:none;width:44px;height:44px;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.menu-btn span{width:24px;height:2px;background:#2a2016}

.head-search{position:absolute;left:0;right:0;top:100%;display:flex;gap:10px;padding:14px var(--gut-r) 14px var(--gut-l);background:#f8f2e7;border-bottom:1px solid var(--line);
  box-shadow:0 16px 30px -20px rgba(30,20,8,.5);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s}
.head-search.open{opacity:1;visibility:visible;transform:none}
.head-search input{flex:1;height:46px;padding:0 16px;border:1px solid var(--line);background:#fff;font-size:17px;outline:none}
.head-search input:focus{border-color:var(--gold)}
.mobnav{display:none}

/* ======================================================== SIDEBAR */
.page-cols{display:grid;grid-template-columns:var(--side-w) minmax(0,1fr);align-items:start;transition:grid-template-columns .3s}
.page-main{min-width:0}

.product-side{position:sticky;top:0;align-self:start;max-height:100vh;display:flex;flex-direction:column;
  background:#f6f0e6 url('paper.jpg') repeat;border-right:1px solid #e2d5bf;z-index:30}
.side-head{flex:0 0 auto;height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 23px;background:linear-gradient(180deg,#e9cb8c 0%,#d9b673 55%,#cfa964 100%);color:#2a1c0c}
.side-head h2{font-family:var(--display);font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.side-fold,.side-close{width:28px;height:28px;display:grid;place-items:center}
.side-fold svg,.side-close svg{width:15px;height:15px}
.side-close{display:none}
.side-rail{display:none}
.side-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c9b48d transparent;padding-bottom:16px}

.side-search{position:relative;margin:11px 15px 5px 16px}
.side-search svg{position:absolute;left:12px;top:50%;width:15px;height:15px;transform:translateY(-50%);color:#5a3a22}
.side-search input{width:100%;height:31px;padding:0 10px 0 36px;background:#efe7d9;border:1px solid #e6dccb;border-radius:4px;font-size:12.4px;outline:none}
.side-search input::placeholder{color:#6c5c48}
.side-search input:focus{border-color:var(--gold);background:#f3ecdf}

.side-list li{margin:0 0 0 15px;border-bottom:1px solid #e7dccb}
.side-list a{position:relative;display:flex;align-items:center;gap:0;height:72px;padding:0 9px 0 0;transition:background-color .2s}
.side-list a:hover{background:rgba(255,252,246,.6)}
.side-list a.on{background:rgba(255,252,246,.8);box-shadow:inset 3px 0 0 var(--gold)}
.side-thumb{position:relative;flex:0 0 81px;height:58px;display:grid;place-items:center}
.side-thumb img{position:absolute;left:2px;top:-2px;width:70px;height:62px;object-fit:contain}
.side-thumb.photo img{left:22px;top:12px;width:44px;height:40px;object-fit:cover;border:1px solid #d6c4a2;border-radius:2px}
.side-thumb b{position:absolute;left:1px;top:5px;width:20px;height:21px;display:grid;place-items:center;
  background:linear-gradient(180deg,#e6c789,#cda461);border-radius:5px;font-family:var(--serif);font-size:11px;font-weight:600;color:#2a1c0c;box-shadow:0 1px 1px rgba(60,40,10,.25)}
.side-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.side-txt .t{font-family:var(--serif);font-size:9.2px;font-weight:700;letter-spacing:.01em;text-transform:uppercase;color:#1d150d;line-height:1.25}
.side-txt .s{font-size:8.8px;color:#5c4e3e;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.side-list .chev{flex:0 0 6px;width:6px;height:11px;color:#6d4a26}

.side-cat{display:flex;align-items:center;gap:13px;margin:22px 14px 0 15px;padding:13px 14px;background:#0f0c09;border-radius:3px;color:#d9b46e;transition:background-color .2s}
.side-cat:hover{background:#231b12}
.side-cat svg{flex:0 0 28px;width:28px;height:28px}
.side-cat b{display:block;font-family:var(--display);font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase}
.side-cat small{display:block;margin-top:3px;font-size:11px;color:#eadfc9}

/* collapsed to a rail (desktop, docked only) */
.side-folded .page-cols{grid-template-columns:46px minmax(0,1fr)}
.side-folded .product-side .side-head,.side-folded .product-side .side-body{display:none}
.side-folded .product-side .side-rail{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;padding:16px 0;height:100vh;background:var(--gold-grad);color:#2a1c0c}
.side-rail svg{width:18px;height:18px}
.side-rail span{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--display);font-size:13px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}

/* drawer (pages without the docked sidebar, and small screens) */
.no-side .product-side{position:fixed;top:0;left:0;bottom:0;width:298px;max-height:none;transform:translateX(-102%);transition:transform .32s ease;box-shadow:12px 0 40px -12px rgba(0,0,0,.5);z-index:90}
.no-side.side-open .product-side{transform:none}
.no-side .side-fold{display:none}
.no-side .side-close{display:grid}
.side-scrim{position:fixed;inset:0;background:rgba(10,8,5,.55);z-index:80}

/* the vertical "Products" tab on the home hero */
.side-tab{position:absolute;left:0;top:50%;z-index:5;transform:translateY(-50%);padding:16px 5px;background:var(--gold-grad);color:#2a1c0c;border-radius:0 3px 3px 0;box-shadow:0 6px 20px rgba(0,0,0,.35)}
.side-tab span{display:block;writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--display);font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}

/* =========================================================== HERO */
.hero{position:relative;overflow:hidden;background:#100b07;color:#fff}
.hero-art{position:absolute;top:0;right:0;bottom:0;width:58%;background-size:cover;background-position:center left}
.hero-art::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#100b07 0%,rgba(16,11,7,.9) 7%,rgba(16,11,7,.55) 16%,rgba(16,11,7,.2) 27%,rgba(16,11,7,0) 38%)}
.hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,8,6,.45),rgba(10,8,6,0) 30%)}
.hero-in{position:relative;max-width:1536px;margin:0 auto;padding:0 var(--gut);height:100%}

.hero-home{height:454px;background:#100b07}
.hero-home .hero-art{width:56%}
.hero-home .hero-in{padding:0 var(--gut-r) 0 var(--gut-l)}
.hero-copy{position:relative;z-index:2;padding-top:67px;max-width:760px}
.hero .eyebrow{color:#c9a35b;font-size:13px;letter-spacing:.38em}
.hero-home h1{margin-top:8px;font-family:var(--display);font-size:42.5px;line-height:48px;font-weight:400;letter-spacing:0;color:#fbf6ec;white-space:nowrap}
.hero-home h1 em{display:block;font-style:normal;color:#d9b46e;letter-spacing:-.035em}
.hero-rule{display:block;width:42px;height:1px;margin:17px 0 4px;background:#c9a35b}
.hero-home .hero-copy p{max-width:470px;font-size:16.7px;line-height:25.5px;color:#f1e8d8}
.hero-btns{display:flex;gap:16px;margin-top:30px}
.hero-btns .btn{height:45px;padding:0}
.hero-btns .btn-gold{width:230px}
.hero-btns .btn-line{width:233px}
.hero-badges{display:flex;gap:46px;margin-top:48px}
.hero-badges li{display:flex;align-items:center;gap:18px;font-family:var(--serif);font-size:11px;font-weight:500;letter-spacing:.14em;line-height:17px;text-transform:uppercase;color:#f1e8d8}
.hero-badges .ic{flex:0 0 31px;width:31px;height:31px;color:#c9a35b}
.hero-badges .ic svg,.hero-badges .ic img{width:100%;height:100%}

.hero-words{position:absolute;right:29px;top:66px;z-index:2;padding:4px 0 4px 17px;font-family:var(--display);font-size:11px;letter-spacing:.3em;line-height:22px;text-transform:uppercase;color:#d9b46e}
.hero-words::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(rgba(200,161,90,0),#c9a35b 15%,#c9a35b 85%,rgba(200,161,90,0))}
.hero-words::after{content:"";position:absolute;left:-3px;top:50%;width:7px;height:7px;background:#c9a35b;transform:translateY(-50%) rotate(45deg)}
.hero-sign{position:absolute;right:65px;bottom:17px;z-index:2;text-align:center}
.hero-sign b{display:block;font-family:var(--display);font-size:19px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:#d9b46e}
.hero-sign span{display:block;margin-top:1px;font-family:var(--serif);font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:#efe3cb}

/* inner page hero — measured from the contact layout */
.hero-page{height:394px}
.hero-page .hero-art{width:64%;background-size:cover;background-position:28% 30%}
.hero-page .hero-in{display:flex;align-items:flex-start;padding:0 0 0 39px}
.hero-page .hero-copy{padding:80px 0 0;max-width:600px}
.crumbs{display:flex;gap:12px;font-family:var(--display);font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:#d0aa62}
.crumbs a:hover{color:var(--gold-lt)}
.hero-page h1{margin-top:17px;font-family:var(--display);font-size:58px;line-height:1;font-weight:400;color:#fbf6ec;white-space:nowrap}
.hero-page h1 em{font-style:normal;color:#d9b46e}
.hero-sub{display:block;margin-top:8px;font-family:var(--display);font-size:26px;line-height:1.1;letter-spacing:0;color:#d9b46e;white-space:nowrap}
.hero-orn{display:block;width:371px;height:9px;margin:12px 0 16px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 371 9'%3E%3Cpath d='M0 4.5h371' stroke='%23c8a15a' stroke-opacity='.7'/%3E%3Cpath d='M128 1l3.5 3.5L128 8l-3.5-3.5z' fill='%23e0bd76'/%3E%3C/svg%3E") left center/contain no-repeat}
.hero-page .hero-copy p{max-width:362px;font-size:19.8px;line-height:28.8px;color:#f1e8d8}
.hero-page .hero-words{top:54px;transform:none;right:36px;font-size:11px;color:#e0bc75;line-height:23.5px;letter-spacing:.3em}

/* compact hero (news, category, search) — measured from the news layout */
.hero-compact{min-height:201px;display:flex}
.hero-compact .hero-in{width:100%;display:flex;align-items:center;padding:20px 0}
.hero-compact .hero-art{width:62%}
.hero-compact .hero-copy{flex:0 0 auto;padding:0 0 0 41px;max-width:760px}
.hero-compact .hero-title{font-family:var(--display);font-size:58.5px;line-height:1;font-weight:500;letter-spacing:0;white-space:nowrap;
  background:linear-gradient(180deg,#f0d394 0%,#d7b06a 55%,#b88b48 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-compact .hero-sub{margin-top:7px;font-size:24px;letter-spacing:0;text-transform:uppercase;color:#d9b46e}
.hero-compact .hero-rule{margin:14px 0 13px;width:40px}
.hero-compact .hero-copy p{font-size:18.4px;line-height:26px;color:#f1e8d8;max-width:580px}
.hero-compact .hero-words{top:50%;transform:translateY(-50%);right:64px;font-family:var(--italic);font-style:italic;font-weight:500;font-size:20px;letter-spacing:.01em;line-height:26.5px;text-transform:none;color:#e2c27e}
.hero-compact .hero-words::after{display:none}

/* sidebar from the top (news) */
.side-top .product-side{height:100vh}
.side-top .side-head{margin-top:40px}
.side-top .side-list a{height:61px}
.side-top .topbar-in{height:29px;padding:0 33px 0 20px}
.side-top .head-in{height:71px;padding:0 32px 0 18px}
.side-top .logo .crest{width:93px;height:62px}
.side-top .logo .nm{font-size:25px}
.side-top .mainnav{gap:15px;margin-left:24px}
.side-top .mainnav a{font-size:9.6px}
.side-top .head-btn{width:118px;flex-basis:118px;height:36px;font-size:10.4px}

/* ===================================================== SECTIONS */
.sec-title{text-align:center}
.sec-title h2{margin-top:2px;font-family:var(--display);font-size:33px;line-height:1.15;color:#16100a}
.sec-title p{margin-top:1px;font-size:14.7px;color:#2b2116}

/* ---------------------------------------------------- collections */
.sec-collections{padding:26px 0 12px}
.sec-collections .wrap{max-width:none;padding:0 var(--gut-r) 0 var(--gut-l)}
.sec-collections .eyebrow{font-size:10.8px;color:#6f5128}
.col-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}
.col-card{display:flex;flex-direction:column;background:var(--ink);border:1px solid #2a2016;transition:transform .3s,box-shadow .3s}
.col-card:hover{transform:translateY(-3px);box-shadow:0 18px 30px -18px rgba(20,12,4,.7)}
.col-img{display:block;aspect-ratio:1.64;overflow:hidden;border-bottom:1px solid #4a3a22}
.col-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.col-card:hover .col-img img{transform:scale(1.04)}
.col-txt{display:flex;flex-direction:column;align-items:center;gap:0;padding:19px 8px 14px;text-align:center}
.col-txt b{font-family:var(--display);font-size:15.2px;line-height:1.2;font-weight:400;letter-spacing:.06em;color:#f3e7d0}
.col-txt span{margin-top:8px;font-size:13.2px;line-height:1.3;color:#e3d8c4}
.col-txt em{margin-top:6px;font-style:normal;font-family:var(--serif);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#d1a862}

/* ----------------------------------------------- the icon strip */
.feat-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:17px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.feat-strip li{display:flex;align-items:center;justify-content:center;gap:16px;padding:6px 10px;border-right:1px solid var(--line)}
.feat-strip li:last-child{border-right:0}
.feat-strip .ic{flex:0 0 44px;width:44px;height:44px;color:#2f2013}
.feat-strip .ic svg,.feat-strip .ic img{width:100%;height:100%}
.feat-strip .lb{font-family:var(--serif);font-size:10.8px;font-weight:600;letter-spacing:.06em;line-height:1.75;text-transform:uppercase;color:#2a2016}

/* -------------------------------------------------------- heritage */
.sec-heritage{display:grid;grid-template-columns:45.8% 54.2%;height:288px}
.her-img{position:relative;overflow:hidden;background:#1a130c}
.her-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.her-copy{position:relative;display:flex;align-items:flex-start;padding:23px 40px 0 56px;overflow:hidden;background:#efe6d5 url('paper.jpg') repeat}
.her-copy::before{content:"";position:absolute;right:0;bottom:0;width:58%;height:100%;background:var(--sketch) right bottom/auto 100% no-repeat;opacity:.9;
  -webkit-mask:linear-gradient(90deg,transparent,#000 30%);mask:linear-gradient(90deg,transparent,#000 30%)}
.her-copy>.rv{position:relative;z-index:1;max-width:430px}
.her-copy .eyebrow{font-size:10px;color:#6f5128}
.her-copy h2{margin:8px 0 10px;font-family:var(--display);font-size:28px;line-height:34px;color:#16100a;white-space:nowrap}
.her-copy p{font-size:12.7px;line-height:18.8px;color:#2b2116;max-width:405px}
.her-copy .btn{margin-top:22px;height:36px;width:184px;padding:0;font-size:10.4px}
.her-copy>.her-place{position:absolute;right:14px;bottom:16px;z-index:1;text-align:center}
.her-place b{display:block;font-family:var(--display);font-size:11.5px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:#231a10}
.her-place span{display:block;margin-top:2px;font-family:var(--serif);font-size:7.6px;letter-spacing:.18em;text-transform:uppercase;color:#4a3b29}

/* ------------------------------------------------------------ B2B */
.sec-b2b{position:relative;height:216px;padding:26px 0 0;background:var(--ink);color:var(--cream);overflow:hidden}
.sec-b2b::before{content:"";position:absolute;top:0;right:0;bottom:0;width:54%;background:var(--map) right center/cover no-repeat;
  -webkit-mask:linear-gradient(90deg,transparent,#000 25%);mask:linear-gradient(90deg,transparent,#000 25%)}
.sec-b2b .wrap{position:relative;max-width:none;padding:0 var(--gut-r) 0 var(--gut-l);margin:0 0 0 10px}
.sec-b2b .eyebrow{color:#c9a35b;font-size:10px;letter-spacing:.3em}
.sec-b2b h2{margin-top:6px;font-family:var(--display);font-size:31px;line-height:1.1;color:#f6ecda}
.b2b-points{display:grid;grid-template-columns:repeat(3,238px);gap:0;margin-top:18px}
.b2b-points li{display:flex;gap:18px;padding-left:9px}
.b2b-points .ic{flex:0 0 40px;width:40px;height:44px;color:#c9a35b}
.b2b-points .ic svg,.b2b-points .ic img{width:100%;height:100%}
.b2b-points b{display:block;font-family:var(--serif);font-size:11px;font-weight:600;letter-spacing:.12em;line-height:19px;text-transform:uppercase;color:#f6ecda}
.b2b-points b+span{display:block;margin-top:6px;font-size:10.4px;line-height:17.5px;color:#d5c9b2}

/* ------------------------------------------------------------ CTA */
.sec-cta{position:relative;height:184px;padding:24px 0 0;background:#120c07;color:#fff;overflow:hidden;border-top:1px solid #5a4325;border-bottom:1px solid #5a4325}
.sec-cta::before{content:"";position:absolute;top:0;right:0;bottom:0;width:68%;background:var(--cta) center/cover no-repeat}
.sec-cta::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#120c07 0%,#120c07 31%,rgba(18,12,7,.75) 37%,rgba(18,12,7,.3) 45%,rgba(18,12,7,0) 55%)}
.sec-cta .wrap{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:40px;max-width:none;padding:0 var(--gut-r) 0 var(--gut-l);margin-left:14px}
.sec-cta .eyebrow{color:#c9a35b;font-size:9.6px;letter-spacing:.3em}
.sec-cta h2{margin-top:6px;font-family:var(--display);font-size:24.7px;line-height:1.1;color:#fbf6ec;white-space:nowrap}
.cta-copy p{margin-top:9px;font-size:13.4px;line-height:18.4px;color:#eadfca}
.cta-copy .btn{margin-top:16px;height:42px;width:242px;padding:0;font-size:11px;letter-spacing:.1em}
.cta-quote{margin:34px -16px 0 0;font-family:var(--italic);font-style:italic;font-weight:500;font-size:24.5px;line-height:30px;text-align:center;color:#f6ecda;text-shadow:0 2px 12px rgba(0,0,0,.45)}

/* ========================================================= FOOTER */
.site-foot{background:var(--ink);color:var(--cream-2)}
/* Client testimonials: a gold band that sets itself apart from the dark
   footer, sliding one line along, paused under the pointer. */
.foot-quotes{position:relative;display:flex;align-items:stretch;background:linear-gradient(180deg,#f0d9a2 0%,#dfba72 55%,#cfa65c 100%);border-top:2px solid #f6e3b4;border-bottom:3px solid var(--gold-dk);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 6px 18px rgba(0,0,0,.35)}
.fq-label{flex:0 0 auto;display:flex;align-items:center;gap:10px;margin:0;padding:0 34px 0 var(--gut);background:var(--ink-2);font-family:var(--display);font-size:13.5px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-lt);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%)}
.fq-label::before{content:"\201C";font-family:var(--italic);font-size:40px;line-height:.6;color:var(--gold);transform:translateY(6px)}
.fq-track{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 36px,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,transparent,#000 36px,#000 calc(100% - 36px),transparent)}
.fq-run{display:flex;width:max-content;animation:fqSlide var(--fq-time,60s) linear infinite}
.foot-quotes:hover .fq-run{animation-play-state:paused}
.fq-run ul{display:flex;margin:0;padding:0;list-style:none}
.fq-run li{display:flex;align-items:baseline;gap:10px;padding:15px 34px;white-space:nowrap;font-size:15px;color:#2a1d0d;border-right:1px solid rgba(90,61,18,.28)}
.fq-stars{color:#6b4512;letter-spacing:1px;font-size:14px}
.fq-stars s{text-decoration:none;color:rgba(107,69,18,.28)}
.fq-run q{font-family:var(--italic);font-style:italic;font-weight:600;font-size:18px;color:#1b1309}
.fq-run cite{font-style:normal;font-weight:700;font-size:13.5px;letter-spacing:.03em;color:#5a3a10}
@keyframes fqSlide{to{transform:translateX(-50%)}}
@media (max-width:700px){
  .foot-quotes{flex-direction:column;align-items:stretch}
  .fq-label{justify-content:center;padding:9px var(--gut);font-size:12px;clip-path:none}
  .fq-run li{padding:10px 24px;font-size:14px}
  .fq-run q{font-size:16px}
}
@media (prefers-reduced-motion:reduce){
  .fq-run{animation:none}
  .fq-track{overflow-x:auto}
}
.foot-in{max-width:1536px;margin:0 auto;padding:0 var(--gut)}
.foot-brand b{display:block;font-family:var(--display);font-weight:400;color:#f3e7d0;letter-spacing:.04em}
.foot-brand span{display:block;color:#d8ccb7}
.foot-social{display:flex;align-items:center;gap:22px;color:#efe3cb}
.foot-social a{width:21px;height:21px;transition:color .2s}
.foot-social a:hover{color:var(--gold-lt)}
.foot-social svg{width:100%;height:100%}
.foot-legal{display:flex;flex-wrap:wrap;align-items:center}
.foot-legal a{font-size:14px;color:#ddd1bc;transition:color .2s}
.foot-legal a:hover{color:var(--gold-lt)}
.foot-legal a+a::before{content:"|";margin:0 18px;color:#8b7a60}

.foot-compact{border-top:0}
.foot-compact .foot-in{display:flex;align-items:center;gap:30px;min-height:90px;max-width:none;padding:0 78px 0 46px}
.foot-compact .foot-legal{margin-left:150px;margin-right:auto}
.foot-compact .foot-legal a{font-size:10.6px}
.foot-compact .foot-legal a+a::before{margin:0 12px}
.foot-compact .foot-social{gap:19px}
.foot-compact .foot-social a{width:18px;height:18px}
.foot-compact .foot-brand b{font-size:16.5px;letter-spacing:.03em}
.foot-compact .foot-brand span{margin-top:3px;font-size:12px}

.foot-band .foot-in{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:74px;max-width:none;padding:0 46px 0 33px}
.foot-band .foot-brand b{font-size:18.5px}
.foot-band .foot-brand span{font-size:12.6px;margin-top:2px}
.foot-feats{display:flex;align-items:center}
.foot-feats li{display:flex;align-items:center;gap:16px;padding:0 36px;border-right:1px solid rgba(200,161,90,.35);font-family:var(--serif);font-size:9.6px;font-weight:500;letter-spacing:.1em;line-height:1.6;text-transform:uppercase;color:#efe3cb}
.foot-feats li:last-child{border-right:0}
.foot-feats .ic{flex:0 0 32px;width:32px;height:32px;color:#c9a35b}
.foot-feats .ic svg,.foot-feats .ic img{width:100%;height:100%}

.foot-full .foot-in{display:grid;grid-template-columns:1.36fr 1.36fr 1fr;max-width:none;padding:28px 52px 26px 41px}
.foot-full .foot-in>div{padding:2px 0}
.foot-full .foot-in>div+div{border-left:1px solid rgba(201,161,91,.5)}
.foot-full .foot-brand b{font-size:27.5px;line-height:1.15}
.foot-full .foot-brand span{font-size:14.8px;line-height:1.45}
.foot-full .foot-brand b+span{margin-top:6px}
.foot-full .foot-brand span+span{margin-top:5px}
.foot-full h5{font-family:var(--display);font-size:11px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:#c9a35b}
.foot-links{padding-left:42px!important}
.foot-links ul{display:grid;grid-template-columns:177px 1fr;grid-auto-flow:column;grid-template-rows:repeat(4,auto);row-gap:0;margin-top:9px}
.foot-links li{line-height:22.3px}
.foot-links a{font-size:13.6px;line-height:22.3px;color:#eadfca;transition:color .2s}
.foot-links a:hover{color:var(--gold-lt)}
.foot-follow{display:flex;flex-direction:column;align-items:center;text-align:center;padding-left:30px!important}
.foot-follow .foot-social{margin-top:14px;gap:19px}
.foot-follow .foot-social a{width:19px;height:19px}
.foot-orn{display:block;width:100%;max-width:240px;height:9px;margin:16px 0 14px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 9'%3E%3Cpath d='M0 4.5h240' stroke='%23c8a15a' stroke-opacity='.4'/%3E%3Cpath d='M106 4.5h28' stroke='%23c8a15a' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat}
.foot-follow .foot-legal{justify-content:center}
.foot-follow .foot-legal a{font-size:10.4px}
.foot-follow .foot-legal a+a::before{margin:0 9px}
.foot-full .foot-bar{margin:0 52px 0 41px}

.foot-bar{border-top:1px solid rgba(200,161,90,.22)}
.foot-bar-in{max-width:1536px;margin:0 auto;padding:12px var(--gut);display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 22px;font-size:13px;color:#a99a80;text-align:center}
.foot-bar .disclaimer{flex-basis:100%;order:3;font-size:12.5px;color:#8f8068}
.foot-bar .credit a{color:var(--gold);transition:color .2s}
.foot-bar .credit a:hover{color:var(--gold-lt)}

/* back to top */
.to-top{position:fixed;right:22px;bottom:22px;z-index:70;width:46px;height:46px;display:grid;place-items:center;background:var(--gold-grad);color:#24180b;border-radius:50%;
  box-shadow:0 8px 20px -6px rgba(0,0,0,.5);opacity:0;transform:translateY(10px);transition:opacity .25s,transform .25s}
.to-top.on{opacity:1;transform:none}
.to-top svg{width:20px;height:20px}

/* reveal */
.rv{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
}

/* ===================================================== CONTACT */
/* Measured from the contact layout. */
.ct-body{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:21px 20px 12px 9px}
.ct-card{background:rgba(250,245,236,.55);border:1px solid #e2d6c1;padding:7px 26px 22px}
.ct-card h2{display:flex;align-items:center;gap:16px;font-family:var(--display);font-size:23.5px;line-height:1.2;color:#16100a;white-space:nowrap}
.ct-card h2::after{content:"";flex:0 0 86px;height:9px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 86 9'%3E%3Cpath d='M7 4.5h72' stroke='%23b38a4a'/%3E%3Cpath d='M0 4.5l3.5-3 3.5 3-3.5 3zM79 4.5l3.5-3 3.5 3-3.5 3z' fill='%23b38a4a'/%3E%3Ccircle cx='43' cy='4.5' r='1.6' fill='%23b38a4a'/%3E%3C/svg%3E") left center/contain no-repeat}
.ct-list{margin-top:22px}
.ct-list>li{display:flex;gap:21px;padding:0 0 18px 8px;margin-bottom:14px;border-bottom:1px solid #d9cab0}
.ct-list>li:last-child{border-bottom:0;margin-bottom:0;padding-bottom:4px}
.ct-ic{flex:0 0 55px;width:55px;height:55px;display:grid;place-items:center;border-radius:50%;background:#1a130c;color:#fff;box-shadow:0 0 0 3px #c9a15b,0 0 0 4px rgba(120,90,40,.3);margin-top:1px}
.ct-ic svg{width:24px;height:24px}
.ct-list h3{font-family:var(--display);font-size:17.4px;line-height:1.2;color:#16100a}
.ct-list p,.ct-list a{display:block;font-size:16.3px;line-height:21.6px;color:#231a10}
.ct-list .co{margin-top:2px;font-family:var(--display);font-size:17px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#16100a}
.ct-list-field[hidden]{display:none}
.ct-stars{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:4px}
.ct-stars input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.ct-stars label{cursor:pointer;line-height:0;padding:2px}
.ct-stars svg{width:30px;height:30px;fill:#e0d3bd;stroke:#c9b48f;stroke-width:.8;transition:fill .15s,transform .15s}
.ct-stars .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ct-stars input:checked~label svg{fill:var(--gold);stroke:var(--gold-dk)}
.ct-stars:hover input~label svg{fill:#e0d3bd;stroke:#c9b48f}
.ct-stars:hover label:hover svg,.ct-stars:hover label:hover~label svg{fill:var(--gold);stroke:var(--gold-dk)}
.ct-stars label:hover svg{transform:scale(1.12)}
.ct-stars input:focus-visible+label svg{outline:2px solid var(--gold);outline-offset:2px;border-radius:3px}
.ct-rating.bad .ct-stars svg{stroke:#b54434}
.ct-list h3+p,.ct-list h3+a{margin-top:2px}
.ct-list a:hover{color:var(--gold-dk)}
.ct-list a.btn{display:inline-flex;width:158px;height:32px;padding:0;margin-top:12px;font-size:10.4px;letter-spacing:.08em;color:#24180b}

.ct-lead{margin-top:6px;font-size:12.6px;line-height:20.4px;color:#2b2116}
.ct-form{margin-top:10px;display:flex;flex-direction:column;gap:5px}
.ct-field{display:flex;flex-direction:column;gap:5px}
.ct-field>span{font-size:13px;font-weight:700;color:#16100a}
.ct-field>span i{font-style:normal}
.ct-field input,.ct-field select,.ct-field textarea{width:100%;height:34px;padding:0 13px;background:#fbf8f2;border:1px solid #e0d3bd;border-radius:3px;font-size:13.4px;color:#2b2116;outline:none;transition:border-color .2s,box-shadow .2s}
.ct-field textarea{height:78px;padding:9px 13px;resize:vertical}
.ct-field select{appearance:none;-webkit-appearance:none;padding-right:36px;
  background:#fbf8f2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%232b2116' stroke-width='1.6'/%3E%3C/svg%3E") right 14px center/10px 7px no-repeat}
.ct-field ::placeholder{color:#7d6d57}
.ct-field input:focus,.ct-field select:focus,.ct-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,161,90,.18)}
.ct-field.bad input,.ct-field.bad select,.ct-field.bad textarea{border-color:#b54434}
.ct-field em{font-style:normal;font-size:12px;color:#a33a2c}
.ct-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ct-submit{width:100%;height:39px;margin-top:0;font-size:12.4px;letter-spacing:.12em;gap:14px}
.ct-submit svg{width:18px;height:18px}
.ct-note{margin-top:4px;text-align:center;font-size:12.2px;color:#2b2116;white-space:nowrap}
.ct-fraud{margin-top:4px;padding:8px 12px;border-left:3px solid #b54434;background:rgba(181,68,52,.06);font-size:12px;line-height:1.45;color:#6d2f24}
.ct-alert{display:flex;gap:12px;align-items:flex-start;margin-top:16px;padding:14px 16px;border:1px solid;font-size:16px}
.ct-alert svg{flex:0 0 22px;width:22px;height:22px}
.ct-alert.ok{border-color:#7da36a;background:#eef5e6;color:#2f5520}
.ct-alert.err{border-color:#d29b8f;background:#fbece8;color:#8a2e22}

.ct-map{padding:0 22px 16px}
.title-orn{display:flex;align-items:center;justify-content:center;gap:12px;font-family:var(--display);font-size:18.8px;color:#16100a}
.title-orn::before,.title-orn::after{content:"";width:60px;height:9px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 9'%3E%3Cpath d='M0 4.5h48' stroke='%23b38a4a'/%3E%3Cpath d='M46 4.5l4-3 4 3-4 3z' fill='%23b38a4a'/%3E%3C/svg%3E") center/contain no-repeat}
.title-orn::after{transform:scaleX(-1)}
.ct-map-grid{display:grid;grid-template-columns:1.58fr 1fr;gap:11px;margin-top:13px}
.ct-map-frame{position:relative;height:241px;border:1px solid #ddd0b8;border-radius:4px;overflow:hidden;background:#e9e3d7}
.ct-map-frame iframe{position:absolute;inset:0;width:100%!important;height:100%!important;border:0;filter:sepia(.15) saturate(.92)}
.ct-map-card{position:absolute;left:10px;top:10px;z-index:2;width:243px;padding:11px 13px 13px;background:#fff;border-radius:3px;box-shadow:0 2px 8px rgba(0,0,0,.2);font-family:Arial,Helvetica,sans-serif;color:#202124}
.ct-map-card b{display:block;font-size:13.6px}
.ct-map-card p{margin-top:6px;font-size:11px;line-height:1.45;color:#3c4043}
.ct-map-card a{display:inline-flex;align-items:center;gap:6px;margin-top:9px;height:26px;padding:0 13px;background:var(--gold-grad);border-radius:2px;font-size:11.4px;color:#24180b}
.ct-city{position:relative;height:241px;margin:0;border-radius:4px;overflow:hidden;background:#2a1c10}
.ct-city img{width:100%;height:100%;object-fit:cover}
.ct-city figcaption{position:absolute;right:25px;bottom:22px;text-align:center;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.6)}
.ct-city b{display:block;font-family:var(--display);font-size:14px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:#e7c98e}
.ct-city span{display:block;margin-top:6px;font-family:var(--serif);font-size:8.6px;letter-spacing:.22em;text-transform:uppercase;color:#f3e7d0}
.wide-feats{padding:0 22px 10px}
.feat-box{background:rgba(250,245,236,.55);border:1px solid #e2d6c1}
.feat-box .feat-strip{margin:0;border:0;padding:8px 0}

/* ========================================================== NEWS */
.nw-body{padding:10px 31px 18px 22px}
.nw-bar{display:flex;align-items:center;gap:11px}
.nw-filter{display:flex;flex-wrap:wrap;gap:11px}
.nw-filter a{display:inline-flex;align-items:center;justify-content:center;height:31px;padding:0 22px;background:#100c08;border:1px solid #100c08;font-family:var(--serif);font-size:11.4px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#e0bd77;transition:.2s}
.nw-filter a:hover{background:#2a2117}
.nw-filter a.on{min-width:123px;background:var(--gold-grad);border-color:#b78b45;color:#24180b}
.nw-search{position:relative;margin-left:auto;flex:0 0 196px}
.nw-search svg{position:absolute;left:12px;top:50%;width:14px;height:14px;transform:translateY(-50%);color:#4a3a28}
.nw-search input{width:100%;height:31px;padding:0 10px 0 34px;background:rgba(250,245,236,.8);border:1px solid #ddcfb6;border-radius:2px;font-size:12.4px;outline:none}
.nw-search input:focus{border-color:var(--gold)}
.nw-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:14px}
.nw-card{display:flex;flex-direction:column;height:241px;background:rgba(251,247,240,.75);border:1px solid #e2d6c1;transition:box-shadow .3s}
.nw-card:hover{box-shadow:0 16px 30px -20px rgba(40,26,10,.55)}
.nw-media{position:relative;display:block;flex:0 0 134px;height:134px;overflow:hidden;background:#1a130c}
.nw-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.nw-card:hover .nw-media img{transform:scale(1.04)}
.nw-media.noimg{display:grid;place-items:center}
.nw-media .ph{width:64px;height:auto;opacity:.6}
.nw-date{position:absolute;left:0;top:0;width:45px;height:53px;padding-top:6px;background:rgba(14,12,9,.88);text-align:center;font-family:var(--display);color:#efe3cb;line-height:1}
.nw-date b{display:block;font-size:20px;font-weight:400}
.nw-date span{display:block;margin-top:2px;font-size:9.4px;letter-spacing:.06em;text-transform:uppercase}
.nw-txt{flex:1;display:flex;flex-direction:column;align-items:flex-start;padding:7px 17px 10px;min-height:0}
.nw-cat{font-family:var(--serif);font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#7a5a30}
.nw-txt h2{margin-top:3px;font-size:16.7px;font-weight:500;line-height:1.2;color:#16100a;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.nw-txt h2 a:hover{color:var(--gold-dk)}
.nw-txt p{margin-top:2px;font-size:14px;line-height:16.5px;color:#3b2f22;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nw-txt .btn{margin-top:auto;height:20px;width:94px;padding:0;font-size:9.8px;letter-spacing:.06em;gap:2px}
.nw-txt p+.btn{margin-top:auto}
.nw-empty{padding:60px 20px;text-align:center;font-size:19px;color:var(--muted)}
.nw-pager{margin-top:22px}

/* pager */
.pager-nav ul{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.pager-nav li a,.pager-nav li span{min-width:40px;height:40px;padding:0 10px;display:grid;place-items:center;border:1px solid var(--line);background:rgba(250,245,236,.7);font-family:var(--display);font-size:14px;color:var(--text);transition:.2s}
.pager-nav li a:hover{border-color:var(--gold);color:var(--gold-dk)}
.pager-nav li.active span{background:var(--gold-grad);border-color:#b78b45;color:#24180b}
.pager-nav li.disabled span{opacity:.4}

/* article page */
.ar-body{padding:30px 40px 40px 34px}
.ar-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;align-items:start}
.ar-main{background:rgba(251,247,240,.75);border:1px solid var(--line-2);padding:30px 36px 36px}
.ar-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-family:var(--display);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:#8a6936}
.ar-main h1{margin-top:10px;font-family:var(--display);font-size:32px;line-height:1.2;color:#1b140d}
.ar-figure{margin:22px 0 0;background:#1a130c}
.ar-figure img{width:100%;max-height:640px;object-fit:contain}
.prose{margin-top:22px;font-size:19px;line-height:1.65;color:#2b2116}
.prose p{margin:0 0 1em}
.prose h2,.prose h3{margin:1.2em 0 .5em;font-family:var(--display);color:#1b140d}
.prose ul,.prose ol{margin:0 0 1em 1.3em;list-style:disc}
.prose a{color:var(--gold-dk);text-decoration:underline}
.prose img{height:auto;margin:1em 0}
.ar-side h3{font-family:var(--display);font-size:18px;color:#1b140d;padding-bottom:12px;border-bottom:1px solid var(--line)}
.ar-side ul{margin-top:6px}
.ar-side li a{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.ar-side li img{flex:0 0 84px;width:84px;height:64px;object-fit:cover;background:#1a130c}
.ar-side li b{display:block;font-weight:500;font-size:16.5px;line-height:1.25;color:#1b140d}
.ar-side li span{display:block;margin-top:4px;font-family:var(--display);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#8a6936}
.ar-side li a:hover b{color:var(--gold-dk)}
.ar-back{margin-top:24px}

/* ================================================== CATALOGUE */
.cat-body{padding:26px 34px 34px 28px}
.cat-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 30px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.cat-head h2{font-family:var(--display);font-size:30px;color:#1b140d}
.cat-head p{font-size:17px;color:var(--text-2)}
.cat-count{font-family:var(--display);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#8a6936}
.cats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;margin-top:22px}
.cats-card{display:flex;flex-direction:column;background:var(--ink);border:1px solid #2a2016;transition:transform .3s,box-shadow .3s}
.cats-card:hover{transform:translateY(-3px);box-shadow:0 18px 30px -18px rgba(20,12,4,.7)}
.cats-card .ci{aspect-ratio:1.15;overflow:hidden;background:#2a2016;border-bottom:1px solid #4a3a22}
.cats-card .ci img{width:100%;height:100%;object-fit:contain;transition:transform .6s}
.cats-card:hover .ci img{transform:scale(1.05)}
.cats-card .ct{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 10px 16px;text-align:center}
.cats-card b{font-family:var(--display);font-size:16px;font-weight:400;letter-spacing:.06em;color:#f3e7d0}
.cats-card .ct span{font-size:15px;color:#d8ccb6}
.cats-card em{margin-top:6px;font-style:normal;font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}

.pr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px;margin-top:22px}
.pr-card{display:flex;flex-direction:column;background:rgba(251,247,240,.8);border:1px solid var(--line-2);transition:box-shadow .3s,transform .3s}
.pr-card:hover{transform:translateY(-3px);box-shadow:0 18px 30px -20px rgba(40,26,10,.6)}
.pr-img{position:relative;display:block;aspect-ratio:576/699;overflow:hidden;background:#5d5a35;cursor:zoom-in}
.pr-img img{width:100%;height:100%;object-fit:contain;transition:transform .6s}
.pr-card:hover .pr-img img{transform:scale(1.04)}
.pr-img .zoom{position:absolute;right:10px;bottom:10px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(14,12,9,.75);color:var(--gold-lt);opacity:0;transition:opacity .25s}
.pr-card:hover .zoom{opacity:1}
.pr-img .zoom svg{width:17px;height:17px}
.pr-txt{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px}
.pr-txt b{font-family:var(--display);font-size:14.5px;font-weight:600;letter-spacing:.06em;color:#1b140d}
.pr-txt small{display:block;font-size:13.5px;color:var(--muted)}
.pr-txt a{flex:0 0 auto;font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dk);border-bottom:1px solid currentColor}
.pr-txt a:hover{color:#6d5022}
.cat-note{margin-top:26px;padding:16px 20px;border:1px dashed var(--line);font-size:16.5px;color:var(--text-2);text-align:center}
.cat-empty{padding:60px 20px;text-align:center;font-size:19px;color:var(--muted)}
.cat-empty .btn{margin-top:20px}

/* lightbox */
.lbox{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:40px 80px;background:rgba(10,8,5,.92);opacity:0;visibility:hidden;transition:.25s}
.lbox.open{opacity:1;visibility:visible}
.lbox figure{margin:0;max-width:min(980px,100%);display:flex;flex-direction:column;align-items:center}
.lbox img{max-height:calc(100vh - 180px);width:auto;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.lbox figcaption{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 24px;color:var(--cream)}
.lbox figcaption b{font-family:var(--display);font-size:20px;font-weight:400;letter-spacing:.08em}
.lbox figcaption .btn{height:40px}
.lb-alt{display:flex;gap:10px;margin-top:12px}
.lb-alt button{width:58px;height:70px;border:1px solid rgba(200,161,90,.4);opacity:.65;overflow:hidden}
.lb-alt button.on{opacity:1;border-color:var(--gold)}
.lb-alt img{width:100%;height:100%;object-fit:contain;background:#5d5a35;box-shadow:none;max-height:none}
.lb-x,.lb-prev,.lb-next{position:absolute;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:var(--cream);background:rgba(255,255,255,.06);transition:background-color .2s}
.lb-x:hover,.lb-prev:hover,.lb-next:hover{background:rgba(200,161,90,.3)}
.lb-x{top:18px;right:18px}
.lb-prev{left:18px;top:50%;transform:translateY(-50%)}
.lb-next{right:18px;top:50%;transform:translateY(-50%)}
.lbox svg{width:22px;height:22px}

/* ========================================== CONTENT PAGES (inner) */
.in-body{padding:34px 34px 10px 30px}
.in-split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.in-split.rev .in-media{order:2}
.in-media{position:relative;overflow:hidden;background:#1a130c;border:1px solid #3a2c1a;aspect-ratio:1.5}
.in-media img{width:100%;height:100%;object-fit:cover}
.in-copy h2{margin-top:10px;font-family:var(--display);font-size:34px;line-height:1.15;color:#1b140d}
.in-copy .prose{margin-top:16px;font-size:18.5px}
.in-copy>p{margin-top:16px;font-size:18.5px;line-height:1.6;color:var(--text-2)}
.in-quote{margin:40px 0 0;padding:28px 30px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--italic);font-style:italic;font-weight:500;font-size:32px;line-height:1.3;color:#5a3f1a}
.in-sec{margin-top:44px}
.in-sec>.sec-title{margin-bottom:22px}
.in-sec>.sec-title h2{font-size:34px}

.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pillar{padding:30px 28px 28px;text-align:center;background:rgba(251,247,240,.75);border:1px solid var(--line-2);border-top:3px solid var(--gold)}
.pillar .num{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--gold-lt);font-family:var(--display);font-size:16px;box-shadow:0 0 0 3px #c79f5a}
.pillar h3{margin-top:16px;font-family:var(--display);font-size:20px;color:#1b140d}
.pillar p{margin-top:8px;font-size:17px;line-height:1.5;color:var(--text-2)}

.dark-band{margin-top:44px;padding:40px 44px;background:var(--ink) radial-gradient(ellipse at 85% 50%,#2c1e11 0%,var(--ink) 65%);color:var(--cream)}
.dark-band .eyebrow{color:var(--gold)}
.dark-band h2{margin-top:10px;font-family:var(--display);font-size:32px;color:#f6ecda}
.dark-band .prose{color:#e2d6c0;max-width:900px}

.members{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px;margin-top:44px;padding:26px 30px;border:1px solid var(--line);background:rgba(251,247,240,.6)}
.members h3{font-family:var(--display);font-size:20px;color:#1b140d}
.members ul{margin-top:10px}
.members li{position:relative;padding-left:22px;font-size:18px;color:var(--text-2)}
.members li::before{content:"";position:absolute;left:2px;top:.6em;width:8px;height:8px;background:var(--gold);transform:rotate(45deg)}
.signature{text-align:right;font-family:var(--italic);font-style:italic;font-weight:500;font-size:24px;line-height:1.3;color:#5a3f1a}
.signature span{display:block;font-family:var(--display);font-style:normal;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:#8a6936}

.svc-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 26px;margin-top:20px}
.svc-list li{position:relative;padding:10px 0 10px 26px;border-bottom:1px solid var(--line);font-size:17.5px;color:#2b2116}
.svc-list li::before{content:"";position:absolute;left:3px;top:19px;width:9px;height:9px;background:var(--gold);transform:rotate(45deg)}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:step}
.step{position:relative;padding:28px 22px 24px;background:rgba(251,247,240,.75);border:1px solid var(--line-2)}
.step::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--display);font-size:38px;line-height:1;color:var(--gold)}
.step h3{margin-top:14px;font-family:var(--display);font-size:17px;letter-spacing:.04em;color:#1b140d}
.step p{margin-top:8px;font-size:16.5px;line-height:1.5;color:var(--text-2)}

.countries{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.countries li{padding:7px 14px;border:1px solid var(--line);background:rgba(251,247,240,.75);font-family:var(--display);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:#3b2d1d}
.tp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tp-card{display:flex;gap:18px;padding:26px 24px;background:var(--ink);color:var(--cream);border:1px solid #2a2016}
.tp-card .ic{flex:0 0 46px;width:46px;height:50px;color:var(--gold)}
.tp-card .ic svg,.tp-card .ic img{width:100%;height:100%}
.tp-card b{display:block;font-family:var(--display);font-size:13.5px;font-weight:400;letter-spacing:.09em;line-height:1.55;text-transform:uppercase;color:#f6ecda}
.tp-card span span{display:block;margin-top:8px;font-size:16px;line-height:1.45;color:#cfc2ab}

.in-cta{margin-top:44px}
.in-cta.sec-cta .wrap{padding:0 40px}

/* videos */
.vd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:6px}
.vd-card{display:flex;flex-direction:column;background:rgba(251,247,240,.75);border:1px solid var(--line-2)}
.vd-frame{position:relative;aspect-ratio:16/9;background:#000;overflow:hidden}
.vd-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vd-play{position:absolute;inset:0;width:100%;height:100%;display:block}
.vd-play img{width:100%;height:100%;object-fit:cover;opacity:.88;transition:opacity .3s,transform .6s}
.vd-play:hover img{opacity:1;transform:scale(1.03)}
.vd-play span{position:absolute;left:50%;top:50%;width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:var(--gold-grad);color:#24180b;transform:translate(-50%,-50%);box-shadow:0 8px 24px rgba(0,0,0,.5)}
.vd-play svg{width:24px;height:24px;margin-left:4px}
.vd-txt{padding:14px 18px 18px}
.vd-txt h2{font-family:var(--display);font-size:16.5px;font-weight:400;letter-spacing:.03em;line-height:1.3;color:#1b140d}
.vd-txt .prose{margin-top:8px;font-size:15.5px;line-height:1.5;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.vd-txt .prose p{margin:0}

/* 404 */
.nf-hero{min-height:470px;display:flex}
.nf-hero .hero-art{width:60%}
.nf-hero .hero-in{width:100%;display:flex;align-items:center;padding:50px var(--gut-r) 54px var(--gut-l)}
.nf-hero .hero-copy{position:relative;padding:0;max-width:620px}
.nf-num{position:absolute;left:-6px;top:-62px;z-index:-1;font-family:var(--display);font-size:190px;line-height:1;font-weight:600;letter-spacing:.02em;
  color:transparent;-webkit-text-stroke:1px rgba(201,163,91,.28);pointer-events:none;user-select:none}
.nf-hero h1{margin-top:14px;font-family:var(--display);font-size:44px;line-height:1.12;font-weight:400;color:#fbf6ec}
.nf-hero h1 em{font-style:normal;color:#d9b46e}
.nf-hero .hero-copy p{max-width:540px;font-size:17px;line-height:26px;color:#f1e8d8}
.nf-search{position:relative;display:flex;max-width:540px;margin-top:26px;background:rgba(251,247,240,.96);border:1px solid #b78b45;border-radius:2px}
.nf-search svg{position:absolute;left:14px;top:50%;width:18px;height:18px;transform:translateY(-50%);color:#5a3a22}
.nf-search input{flex:1;min-width:0;height:48px;padding:0 12px 0 44px;background:none;border:0;font-size:16px;color:#2b2116;outline:none}
.nf-search .btn{height:48px;border-radius:0;padding:0 24px}
.nf-hero .hero-btns{margin-top:18px}
.nf-hero .hero-btns .btn{padding:0 26px}

.nf-suggest{background:#f6efe2;border-bottom:1px solid var(--line)}
.nf-suggest .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;padding-top:18px;padding-bottom:18px}
.nf-suggest h2{font-family:var(--display);font-size:16px;color:#16100a}
.nf-suggest ul{display:flex;flex-wrap:wrap;gap:8px}
.nf-suggest a{display:inline-flex;align-items:center;height:34px;padding:0 16px;border:1px solid #c9a35b;background:#fbf7f0;font-size:14.5px;color:#4a3518;transition:.2s}
.nf-suggest a:hover{background:var(--gold-grad);color:#24180b}

.nf-body{padding:34px 0 26px}
.nf-cats{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}
.nf-cats .ci{aspect-ratio:1.4}
.nf-all{margin-top:14px;text-align:center}
.nf-all a{font-family:var(--serif);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dk)}
.nf-all a:hover{color:#6d5022}
.nf-cul{justify-content:center;margin-top:24px}
.nf-news-title{margin-top:38px}
.nf-body .nw-grid{margin-top:16px}
.nw-h{margin-top:3px;font-size:16.7px;font-weight:500;line-height:1.2;color:#16100a}
.nw-h a:hover{color:var(--gold-dk)}

/* ==================================================== RESPONSIVE */
@media (min-width:1440px){
  .mainnav{gap:22px}
  .mainnav a{font-size:11.5px}
}
@media (max-width:1239px){
  :root{--gut-l:31px;--gut-r:52px}
  .logo .crest{width:97px;height:65px}
  .head-in{height:80px}
  .mainnav{gap:14px;margin-left:30px}
  .mainnav a{font-size:9.7px}
  .head-btn{width:116px;flex-basis:116px;height:34px;margin-left:18px;font-size:10.4px}
}
@media (max-width:1060px){
  .side-top .side-head{margin-top:0}
  .side-top .product-side{height:auto}
  .mainnav,.head-btn{display:none}
  .menu-btn{display:flex;margin-left:auto}
  .search-btn{margin-left:auto}
  .logo{margin-right:0}
  .mobnav{display:none;flex-direction:column;padding:8px var(--gut) 18px;background:#f8f2e7;border-top:1px solid var(--line)}
  .mobnav.open{display:flex}
  .mobnav a,.mob-products{display:block;padding:12px 0;border-bottom:1px solid var(--line-2);font-family:var(--display);font-size:13px;letter-spacing:.08em;text-transform:uppercase;text-align:left}
  .mobnav a.active{color:var(--gold-dk)}
  .mob-products{color:var(--gold-dk);border-bottom:0}

  /* the docked sidebar becomes a drawer */
  .page-cols,.side-folded .page-cols{display:block}
  .has-side .product-side{position:fixed;top:0;left:0;bottom:0;width:298px;max-height:none;transform:translateX(-102%);transition:transform .32s ease;box-shadow:12px 0 40px -12px rgba(0,0,0,.5);z-index:90}
  .has-side.side-open .product-side{transform:none}
  .has-side .side-fold{display:none}
  .has-side .side-close{display:grid}
  .side-folded .product-side .side-head,.side-folded .product-side .side-body{display:flex}
  .side-folded .product-side .side-body{display:block}
  .side-folded .product-side .side-rail{display:none}

  .hero-words{display:none}
  .col-grid{grid-template-columns:repeat(2,1fr)}
  .feat-strip{grid-template-columns:repeat(2,1fr);row-gap:14px}
  .feat-strip li:nth-child(2){border-right:0}
  .b2b-points{grid-template-columns:1fr;max-width:520px}
  .sec-b2b::before{opacity:.45;width:100%}
  .foot-band .foot-in{flex-wrap:wrap;justify-content:center;padding-top:22px;padding-bottom:22px;text-align:center}
  .foot-feats{flex-wrap:wrap;justify-content:center;row-gap:14px}
  .ct-body{grid-template-columns:1fr;padding:22px}
  .nw-body,.cat-body,.in-body,.ar-body{padding-left:var(--gut);padding-right:var(--gut)}
  .nw-grid,.vd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps{grid-template-columns:repeat(2,1fr)}
  .tp-grid,.pillars{grid-template-columns:1fr}
  .ar-grid{grid-template-columns:1fr}
}
@media (min-width:1061px){
  .has-side .side-tab{display:none}
}
@media (max-width:900px){
  .hero-home h1{white-space:normal}
  .topbar .tb-left{display:none}
  .topbar-in{justify-content:center}
  .hero-home{height:auto;min-height:560px}
  .hero-home .hero-art,.hero-page .hero-art,.hero-compact .hero-art{width:100%;opacity:.42}
  .hero-home .hero-copy{padding:44px 0 50px}
  .hero-home h1{font-size:40px}
  .hero-btns{flex-wrap:wrap}
  .hero-badges{flex-wrap:wrap;gap:18px 30px}
  .hero-sign{display:none}
  .hero-page{height:auto;padding:56px 0}
  .hero-page .hero-copy{padding:0}
  .hero-page h1{font-size:50px}
  .hero-compact{height:auto;padding:40px 0}
  .hero-compact .hero-copy{padding:0}
  .hero-compact .hero-title{font-size:42px}
  .sec-title h2{font-size:32px}
  .sec-heritage{grid-template-columns:1fr}
  .her-img{min-height:260px}
  .her-copy{padding:34px var(--gut) 60px}
  .sec-cta .wrap{flex-direction:column;align-items:flex-start}
  .sec-cta::before{width:100%;opacity:.5}
  .cta-quote{margin:0;font-size:26px;text-align:left}
  .foot-compact .foot-in{flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;text-align:center}
  .foot-full .foot-in{grid-template-columns:1fr;gap:26px}
  .foot-full .foot-in>div{padding:0!important}
  .foot-full .foot-in>div+div{border-left:0;border-top:1px solid rgba(200,161,90,.3);padding-top:22px!important}
  .foot-follow{align-items:flex-start;text-align:left}
  .foot-follow .foot-legal{justify-content:flex-start}
  .ct-map-grid,.in-split{grid-template-columns:1fr}
  .in-split.rev .in-media{order:0}
  .nw-bar{flex-wrap:wrap}
  .nw-search{flex:1 1 100%;margin-left:0}
  .svc-list{grid-template-columns:1fr}
  .members{flex-direction:column;align-items:flex-start}
  .signature{text-align:left}
  .lbox{padding:60px 14px}
  .lb-prev,.lb-next{top:auto;bottom:14px;transform:none}
}
@media (max-width:640px){
  :root{--gut:16px}
  body{font-size:16px}
  .head-in{height:72px;gap:8px}
  .logo .crest{height:46px}
  .logo .nm{font-size:19px}
  .logo .sub{font-size:7.5px;letter-spacing:.14em}
  .tb-export{display:none}
  .tb-rule{display:none}
  .head-search{flex-direction:column}
  .hero-home h1{font-size:33px}
  .hero-home .hero-copy p{font-size:17.5px}
  .hero-btns .btn{width:100%}
  .hero-page h1{font-size:40px}
  .hero-sub{font-size:20px}
  .hero-compact .hero-title{font-size:34px}
  .hero-compact .hero-sub{font-size:16px}
  .col-grid{grid-template-columns:1fr}
  .feat-strip{grid-template-columns:1fr}
  .feat-strip li{border-right:0;justify-content:flex-start;padding-left:20px}
  .feat-box{margin:0 var(--gut)}
  .ct-body{padding:16px var(--gut)}
  .ct-card{padding:22px 18px}
  .ct-card h2{font-size:24px}
  .ct-card h2::after{flex-basis:60px}
  .ct-list>li{gap:16px;padding-left:0}
  .ct-ic{flex-basis:48px;width:48px;height:48px}
  .ct-list p,.ct-list a{font-size:17px}
  .ct-map,.wide-feats{padding-left:var(--gut);padding-right:var(--gut)}
  .ct-map-card{width:auto;right:14px}
  .nw-grid,.vd-grid,.steps{grid-template-columns:1fr}
  .nw-filter a{padding:0 16px}
  .pr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .pr-txt{flex-direction:column;align-items:flex-start}
  .cats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .ar-main{padding:22px 18px}
  .dark-band{padding:30px 20px}
  .in-copy h2,.in-sec>.sec-title h2{font-size:28px}
  .in-quote{font-size:25px;padding:22px 10px}
  .foot-feats li{padding:0 16px;border-right:0}
}

/* ============================================ SWORDS BY CULTURE */
.cul-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px}
.cul-chips>span{margin-right:6px;font-family:var(--display);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:#8a6936}
.cul-chips a{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 16px;background:var(--ink-2);border:1px solid var(--ink-2);font-family:var(--display);font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-lt);transition:.2s}
.cul-chips a small{font-family:var(--serif);font-size:13px;font-weight:400;letter-spacing:0;color:#bfae8e}
.cul-chips a:hover{background:#2a2117}
.cul-chips a.on{background:var(--gold-grad);border-color:#b78b45;color:#24180b}
.cul-chips a.on small{color:#4a3618}

.cul-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:20px}
.cul-grid a{display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px 10px;background:var(--ink) radial-gradient(ellipse at 50% 0%,#2c1f12,var(--ink) 70%);border:1px solid #3a2c1a;text-align:center;transition:transform .3s,border-color .3s}
.cul-grid a:hover{transform:translateY(-3px);border-color:var(--gold)}
.cul-grid b{font-family:var(--display);font-size:16px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:#f3e7d0}
.cul-grid span{font-size:14.5px;color:var(--gold)}

.side-cul{margin:16px 12px 0}
.side-cul h3{padding-bottom:8px;border-bottom:1px solid #dacbb0;font-family:var(--display);font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#22180e}
.side-cul ul{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.side-cul a{display:inline-block;padding:5px 10px;border:1px solid #d3c19f;background:rgba(255,250,240,.45);font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#3b2d1d;transition:.2s}
.side-cul a:hover{border-color:var(--gold);color:var(--gold-dk)}
.side-cul a.on{background:var(--gold-grad);border-color:#b78b45;color:#24180b}

.drop-2{display:grid;grid-template-columns:2fr 1fr;min-width:660px;padding:16px 0;max-height:calc(100vh - 140px);overflow-y:auto}
/* categories run in two columns so the menu stays short enough for laptop screens */
.drop-2>div:first-child{display:grid;grid-template-columns:1fr 1fr;align-content:start}
.drop-2>div:first-child h6{grid-column:1/-1}
.drop-2>div{align-self:start}
.drop-2 a{display:flex;align-items:center;gap:11px}
.dd-ic{flex:0 0 20px;width:20px;height:20px;color:var(--gold-dk)}
.dd-ic svg{width:100%;height:100%;display:block}
.drop-2 a:hover .dd-ic{color:#7a5520}
.dd-flag{flex:0 0 22px;width:22px;height:15px;display:block;border-radius:2px;overflow:hidden;box-shadow:0 0 0 1px rgba(60,40,15,.18),0 1px 2px rgba(60,40,15,.2)}
.dd-flag svg{width:100%;height:100%;display:block}
.dd-flag:has(.globe){box-shadow:none;color:var(--gold-dk);border-radius:0}
.drop h6{margin:0;padding:2px 20px 10px;font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dk)}
.drop-2>div+div{border-left:1px solid var(--line-2)}
@media (max-width:1060px){
  .cul-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:640px){
  .cul-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* contact — keep the map button a button, and the photo flush */
.ct-list a.btn{display:inline-flex;width:auto;font-size:12px;color:#24180b}
.ct-city{margin:0}

/* small screens — the products tab becomes a floating button */
@media (max-width:900px){
  .side-tab{position:fixed;top:auto;bottom:22px;left:16px;transform:none;z-index:70;padding:12px 18px;border-radius:30px}
  .side-tab span{writing-mode:horizontal-tb;transform:none}
}

/* listing heroes and news cards on small screens */
@media (max-width:1060px){
  .nw-card{height:auto}
  .nw-txt .btn{margin-top:12px}
}
@media (max-width:900px){
  .hero-compact .hero-in{padding:34px var(--gut)}
  .hero-compact .hero-title{white-space:normal}
  .hero-compact .hero-sub,.hero-page h1,.hero-sub{white-space:normal}
}

/* ================================================== MOBILE (≤ 900 / 640) */
/* The desktop rules above are measured to the layouts and keep headings on
   one line; on a phone everything has to wrap inside the screen instead. */
@media (max-width:900px){
  .topbar-in,.side-top .topbar-in{padding:0 var(--gut)}
  .head-in,.side-top .head-in{padding:0 var(--gut);height:72px}
  .logo{min-width:0}
  .hero-copy,.hero-page .hero-copy,.hero-compact .hero-copy{flex:1 1 auto;min-width:0;max-width:100%}
  .hero-page .hero-in{padding:0 var(--gut)}
  .hero-page .hero-copy{padding:0}
  .hero-page h1,.hero-compact .hero-title,.hero-home h1,.hero-sub,.hero-compact .hero-sub,
  .sec-cta h2,.her-copy h2,.ct-card h2,.ct-note,.cat-head h2{white-space:normal}
  .hero-orn{width:100%;max-width:260px}
  .hero-page .hero-copy p,.hero-compact .hero-copy p{max-width:none}
  .sec-cta{height:auto;padding:34px 0}
  .sec-cta .wrap,.sec-b2b .wrap{margin:0;padding:0 var(--gut)}
  .sec-b2b{height:auto;padding:34px 0}
  .b2b-points{grid-template-columns:1fr;gap:22px}
  .sec-heritage{height:auto}
  .her-copy>.rv{max-width:none}
  .ct-card h2::after{display:none}
  .foot-band .foot-in,.foot-compact .foot-in,.foot-full .foot-in{padding-left:var(--gut);padding-right:var(--gut)}
  .foot-full .foot-bar{margin:0 var(--gut)}
  .foot-compact .foot-legal{margin:0;justify-content:center}
  .foot-links{padding-left:0!important}
  .foot-follow{padding-left:0!important}
  .foot-links ul{grid-template-columns:1fr 1fr}

  /* category filter scrolls sideways instead of stacking */
  .nw-filter,.cul-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-right:calc(var(--gut) * -1);padding-right:var(--gut)}
  .nw-filter::-webkit-scrollbar,.cul-chips::-webkit-scrollbar{display:none}
  .nw-filter a,.cul-chips a{flex:0 0 auto}

  /* the floating Products button must not sit on the copyright line */
  .foot-bar{padding-bottom:64px}
}

@media (max-width:640px){
  .topbar{font-size:10px}
  .logo{gap:8px}
  .logo .crest,.side-top .logo .crest{width:62px;height:42px}
  .logo .nm,.side-top .logo .nm{font-size:18px}
  .logo .sub{margin-top:4px;font-size:6.6px;letter-spacing:.12em}
  .search-btn{margin-left:auto}
  .menu-btn{width:40px}

  .hero .eyebrow{font-size:10.5px;letter-spacing:.24em}
  .hero-home .hero-copy{padding:34px 0 40px}
  .hero-home h1{font-size:29px;line-height:36px}
  .hero-home .hero-copy p{font-size:16px;line-height:24px}
  .hero-btns{gap:10px}
  .hero-btns .btn-gold,.hero-btns .btn-line{width:100%}
  .hero-badges{flex-direction:column;gap:14px;margin-top:30px}
  .hero-page{padding:40px 0 44px}
  .hero-page h1{font-size:38px;line-height:1.05}
  .hero-sub{font-size:19px}
  .hero-page .hero-copy p{font-size:16.5px;line-height:25px}
  .crumbs{font-size:11.5px}
  .hero-compact{min-height:0}
  .hero-compact .hero-title{font-size:36px}
  .hero-compact .hero-sub{font-size:15px}
  .hero-compact .hero-copy p{font-size:15.5px;line-height:23px}

  .sec-collections .wrap{padding:0 var(--gut)}
  .sec-title h2{font-size:26px}
  .eyebrow.orn::before,.eyebrow.orn::after{width:34px}
  .col-grid{grid-template-columns:1fr 1fr;gap:10px}
  .col-txt{padding:12px 6px 12px}
  .col-txt b{font-size:12.5px}
  .col-txt span{margin-top:5px;font-size:12px}
  .col-txt em{font-size:9px}

  .feat-strip{grid-template-columns:1fr 1fr;row-gap:0;padding:4px 0}
  .feat-strip li{justify-content:flex-start;gap:10px;padding:12px 8px;border-right:0}
  .feat-strip li:nth-child(odd){border-right:1px solid var(--line)}
  .feat-strip li:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .feat-strip .ic{flex-basis:32px;width:32px;height:32px}
  .feat-strip .lb{font-size:9.6px}
  .feat-box .feat-strip{padding:4px 0}

  .her-copy{padding:28px var(--gut) 70px}
  .her-copy h2{font-size:24px;line-height:30px}
  .her-copy p{font-size:15px;line-height:22px}
  .sec-b2b h2,.sec-cta h2{font-size:24px}
  .b2b-points b+span{font-size:13.5px;line-height:20px}
  .cta-copy p{font-size:15px;line-height:22px}
  .cta-copy .btn{width:100%}
  .cta-quote{font-size:22px;line-height:28px}

  .ct-body{padding:16px var(--gut)}
  .ct-card{padding:16px 16px 20px}
  .ct-card h2{font-size:21px}
  .ct-list>li{gap:14px;padding-left:0}
  .ct-ic{flex-basis:44px;width:44px;height:44px}
  .ct-ic svg{width:20px;height:20px}
  .ct-list h3{font-size:16px}
  .ct-list p,.ct-list a{font-size:15px;line-height:21px}
  .ct-list .co{font-size:15px}
  .ct-lead{font-size:14px}
  .ct-field input,.ct-field select{height:42px;font-size:16px}   /* 16px stops iOS zooming in */
  .ct-field textarea{font-size:16px}
  .ct-submit{height:46px}
  .ct-map{padding:0 var(--gut) 16px}
  .ct-map-frame,.ct-city{height:220px}
  .ct-map-card{right:10px;width:auto}
  .wide-feats{padding:0 var(--gut) 12px}

  .nw-body{padding:12px var(--gut) 18px}
  .nw-search{flex:1 1 100%}
  .nw-search input{height:40px;font-size:16px}
  .nw-txt h2{font-size:17px}

  .foot-full .foot-brand b{font-size:24px}
  .foot-feats{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px;width:100%}
  .foot-feats li{padding:0;border:0;text-align:left}
  .foot-bar-in{font-size:12px}
}
@media (max-width:900px){
  .sec-b2b::before{opacity:.22;width:100%}
  .nw-txt h2{-webkit-line-clamp:2}
}

/* ======================================================= SITEMAP */
.sm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sm-col{padding:22px 24px 20px;background:rgba(251,247,240,.75);border:1px solid var(--line-2);border-top:3px solid var(--gold)}
.sm-col h2{font-family:var(--display);font-size:19px;color:#16100a;padding-bottom:10px;border-bottom:1px solid var(--line)}
.sm-col h2 small,.sm-col li small{font-family:var(--serif);font-size:13px;color:var(--muted)}
.sm-col ul{margin-top:8px}
.sm-col li{padding:5px 0;font-size:16px;line-height:1.35}
.sm-col li a{color:#2b2116;transition:color .2s}
.sm-col li a:hover{color:var(--gold-dk);text-decoration:underline}
.sm-news{margin-top:18px}
.sm-news ul{columns:3 240px;column-gap:28px}
.sm-news li{break-inside:avoid}
.sm-xml{margin:24px 0 10px;text-align:center;font-size:15px;color:var(--muted)}
.sm-xml a{color:var(--gold-dk);text-decoration:underline}
@media (max-width:900px){
  .sm-grid{grid-template-columns:1fr}
  .sm-col{padding:18px 16px}
}

@media (max-width:900px){
  .nf-hero .hero-art{width:100%;opacity:.35}
  .nf-hero .hero-in{padding:44px var(--gut) 46px}
  .nf-num{font-size:130px;top:-40px}
  .nf-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .nf-hero h1{font-size:30px}
  .nf-hero .hero-copy p{font-size:15.5px;line-height:23px}
  .nf-search .btn{padding:0 14px}
  .nf-search input{font-size:16px}
  .nf-hero .hero-btns .btn{flex:1 1 0;padding:0 10px}
  .nf-cul{justify-content:flex-start}
}

/* ============================================== CONTENT FROM THE OLD SITE */
.honour{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:36px;align-items:center}
.honour img{width:100%;border:1px solid #4a3a22}
.family-grid{display:grid;grid-template-columns:1.24fr 1.83fr 1.5fr;gap:18px;align-items:start}   /* the photos' own proportions, so all three share one height */
.family-grid figure{margin:0;background:rgba(251,247,240,.75);border:1px solid var(--line-2);padding:10px 10px 0}
.family-grid img{width:100%;height:auto}
.family .sec-title p{max-width:640px;margin-left:auto;margin-right:auto}
.family-grid figcaption{padding:12px 4px 14px;text-align:center;font-family:var(--display);font-size:13.5px;letter-spacing:.06em;color:#16100a}
.ar-code{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px;margin-top:22px;padding:16px 18px;border:1px dashed #c9a35b;background:rgba(201,163,91,.07)}
.ar-code span{margin-right:auto;font-size:16px;color:var(--text-2)}
.ar-code b{font-family:var(--display);font-weight:600;letter-spacing:.06em;color:#16100a}
.ar-code .btn{height:40px}
.ar-code .btn-line{color:var(--gold-dk)}
@media (max-width:900px){
  .honour,.family-grid{grid-template-columns:1fr}
  .ar-code .btn{width:100%}
}

/* ===================================================== TYPOGRAPHY FLOORS */
/* The layouts were measured from small mockup images, which left some text
   below what reads comfortably. These floors lift running text to 12px and
   labels to ~10.5px on desktop without changing the layout. */
.b2b-points b+span{font-size:12px;line-height:18px}
.b2b-points{grid-template-columns:repeat(3,250px)}
.her-place span{font-size:9px}
.hero-sign span{font-size:9.6px}
.nw-cat{font-size:10px}
.nw-date span{font-size:10px}
.nw-txt .btn{font-size:10.4px;width:100px}
.eyebrow,.cta-copy .eyebrow,.sec-b2b .eyebrow,.her-copy .eyebrow{font-size:10.6px}
.col-txt em{font-size:10.6px}
.foot-legal a,.foot-compact .foot-legal a,.foot-follow .foot-legal a{font-size:12px}
.foot-bar-in{font-size:13px}
.pr-txt a{font-size:11px}
.ct-map-card p{font-size:12px}
.ct-map-card a{font-size:12.4px}
.mainnav a{font-size:11px}

/* Wide screens: the layouts describe a ~1240px screen, and every size above
   is fixed in px. Rather than leave the type at laptop size on a 1920px
   monitor, the whole page scales up in proportion — exactly as the design
   would. --z undoes the zoom wherever a size is tied to the viewport. */
:root{--z:1}
@media (min-width:1400px){:root{--z:1.1}}
@media (min-width:1600px){:root{--z:1.2}}
@media (min-width:1800px){:root{--z:1.32}}
@media (min-width:1400px){
  body{zoom:var(--z)}
  .product-side,.side-top .product-side{max-height:calc(100vh / var(--z))}
  .side-top .product-side{height:calc(100vh / var(--z))}
  .side-folded .product-side .side-rail{height:calc(100vh / var(--z))}
  .lbox img{max-height:calc((100vh - 180px) / var(--z))}
}

@media (max-width:640px){
  .logo .sub{font-size:7.4px;letter-spacing:.08em}
  .her-place span{font-size:9.5px}
  .nw-cat{font-size:10.5px}
  .col-txt em{font-size:10px}
  .feat-strip .lb{font-size:10.4px}
  .eyebrow,.cta-copy .eyebrow,.sec-b2b .eyebrow,.her-copy .eyebrow,.hero .eyebrow{font-size:11px}
  .nw-txt .btn{font-size:11px;height:26px;width:auto;padding:0 14px}
  .pr-txt a{font-size:11.5px}
  .b2b-points{grid-template-columns:1fr}
  .b2b-points b+span{font-size:14px;line-height:21px}
  .feat-strip .lb,.foot-feats li{font-size:10.4px}
}

/* the news header shares its row with the sidebar, so it is tighter */
@media (min-width:1400px) and (max-width:1599px){
  .side-top .mainnav{gap:11px;margin-left:16px}
  .side-top .head-btn{margin-left:12px}
}
@media (min-width:1061px){
  .side-top .mainnav a{font-size:10.4px}
  .side-top .mainnav{gap:12px;margin-left:18px}
}
.foot-feats li{font-size:10.4px}

/* News: the header shares its row with the sidebar. A slightly smaller
   logo keeps the full menu on one line down to 1300px; below that the menu
   folds into the burger, as it does everywhere under 1060px. */
@media (min-width:1061px){
  .side-top .logo .crest{width:76px;height:51px}
  .side-top .logo .nm{font-size:22px}
  .side-top .logo .sub{font-size:7.6px}
  .side-top .search-btn{margin-left:8px}
  .side-top .head-btn{width:112px;flex-basis:112px;margin-left:12px}
}
@media (min-width:1061px) and (max-width:1300px){
  .side-top .mainnav,.side-top .head-btn{display:none}
  .side-top .search-btn{margin-left:auto}
  .side-top .menu-btn{display:flex}
  .side-top .mobnav{display:none;flex-direction:column;padding:8px 24px 18px;background:#f8f2e7;border-top:1px solid var(--line)}
  .side-top .mobnav.open{display:flex}
  .side-top .mobnav a,.side-top .mob-products{display:block;padding:12px 0;border-bottom:1px solid var(--line-2);font-family:var(--display);font-size:13px;letter-spacing:.08em;text-transform:uppercase;text-align:left}
  .side-top .mob-products{display:none}
}

/* Small laptops (1061–1239): the menu floor above must not undo the tighter
   header of this range, and the news footer wraps instead of overflowing. */
@media (max-width:1239px){
  .mainnav a{font-size:10px}
  .mainnav{gap:12px;margin-left:20px}
  .foot-band .foot-in{flex-wrap:wrap;justify-content:center;padding-top:18px;padding-bottom:18px}
}
@media (min-width:1061px) and (max-width:1180px){
  .mainnav,.head-btn{display:none}
  .search-btn{margin-left:auto}
  .menu-btn{display:flex}
  .mobnav{display:none;flex-direction:column;padding:8px var(--gut-l) 18px;background:#f8f2e7;border-top:1px solid var(--line)}
  .mobnav.open{display:flex}
  .mobnav a,.mob-products{display:block;padding:12px 0;border-bottom:1px solid var(--line-2);font-family:var(--display);font-size:13px;letter-spacing:.08em;text-transform:uppercase;text-align:left}
  .mob-products{display:none}
}
@media (max-width:1140px){
  .ct-card h2,.ct-note{white-space:normal}
  .ct-card{min-width:0}
}

/* ============================================================ PREMIUM HOME */
/* Motion and finish on the home page. The layout is unchanged; every
   animation below is switched off for prefers-reduced-motion at the end. */

/* scroll progress */
.scroll-line{position:fixed;left:0;top:0;right:0;height:2px;z-index:120;transform:scaleX(0);transform-origin:0 50%;
  background:linear-gradient(90deg,#8a6431,#e7c985 50%,#b88c45);pointer-events:none}

/* header sticks on pages without the docked sidebar */
.no-side .site-head{position:sticky;top:0;transition:background-color .35s,box-shadow .35s}
.no-side .site-head .head-in,.no-side .site-head .logo .crest,.no-side .site-head .logo .nm{transition:height .35s,width .35s,font-size .35s}
.site-head.stuck{background:rgba(246,239,227,.9);-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);box-shadow:0 14px 30px -22px rgba(30,20,8,.65)}
@media (min-width:901px){
  .site-head.stuck .head-in{height:66px}
  .site-head.stuck .logo .crest{width:84px;height:56px}
  .site-head.stuck .logo .nm{font-size:23px}
}

/* hero entrance — pure CSS, so the text never depends on script to appear */
@keyframes us-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes us-fade{from{opacity:0}to{opacity:1}}
@keyframes us-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes us-kenburns{from{transform:scale(1.14) translateX(2%)}to{transform:scale(1) translateX(0)}}
@keyframes us-shine{0%,62%{background-position:130% 0}100%{background-position:-130% 0}}
.hero-home .hero-art{animation:us-kenburns 14s cubic-bezier(.2,.7,.2,1) both;transform-origin:70% 45%}
.hero-home .eyebrow{animation:us-rise .7s .05s both}
.hero-home h1 .ln{display:block;animation:us-rise .8s both}
.hero-home h1 .ln:nth-child(1){animation-delay:.1s}
.hero-home h1 .ln:nth-child(2){animation-delay:.22s}
.hero-home .hero-rule{transform-origin:0 50%;animation:us-grow .8s .4s both}
.hero-home .hero-copy p{animation:us-rise .7s .35s both}
.hero-home .hero-btns{animation:us-rise .7s .48s both}
.hero-home .hero-badges li{animation:us-rise .8s both}
.hero-home .hero-badges li:nth-child(1){animation-delay:.6s}
.hero-home .hero-badges li:nth-child(2){animation-delay:.7s}
.hero-home .hero-badges li:nth-child(3){animation-delay:.8s}
.hero-home .hero-words li{animation:us-rise .8s both}
.hero-home .hero-words li:nth-child(1){animation-delay:.9s}
.hero-home .hero-words li:nth-child(2){animation-delay:1.02s}
.hero-home .hero-words li:nth-child(3){animation-delay:1.14s}
.hero-home .hero-words li:nth-child(4){animation-delay:1.26s}
.hero-home .hero-words::before,.hero-home .hero-words::after{animation:us-fade 1.2s .8s both}
.hero-home .hero-sign{animation:us-fade 1.4s 1.5s both}
.shimmer{background:linear-gradient(100deg,#d9b46e 0%,#d9b46e 42%,#fff1c9 50%,#d9b46e 58%,#d9b46e 100%);background-size:260% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;animation:us-rise .8s .22s both,us-shine 7s 1.8s infinite}

/* embers drift up through the artwork */
.embers{position:absolute;top:0;right:0;bottom:0;width:62%;z-index:1;pointer-events:none;mix-blend-mode:screen}
.hero-home .hero-in{z-index:2}

/* buttons: a sweep of light on hover */
.btn{position:relative;overflow:hidden;isolation:isolate}
.btn-gold::after{content:"";position:absolute;top:0;bottom:0;left:-75%;width:45%;z-index:-1;
  background:linear-gradient(105deg,transparent,rgba(255,250,230,.65),transparent);transform:skewX(-20deg);transition:left .75s ease}
.btn-gold:hover::after{left:135%}
.btn-gold{transition:filter .2s,transform .2s,box-shadow .3s}
.btn-gold:hover{box-shadow:0 10px 24px -12px rgba(150,105,40,.8);transform:translateY(-1px)}
.btn-line::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(200,161,90,.16);transform:scaleX(0);transform-origin:0 50%;transition:transform .45s ease}
.btn-line:hover{background:none}
.btn-line:hover::before{transform:scaleX(1)}
.btn .arr{transition:transform .3s}
.btn:hover .arr,.col-card:hover .arr,.arm-txt a:hover .arr{transform:translateX(4px) translateY(-.04em)}

/* collection cards */
.col-img{position:relative}
.col-count{position:absolute;right:10px;top:10px;padding:5px 10px;background:rgba(14,11,8,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  border:1px solid rgba(201,163,91,.5);font-family:var(--serif);font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#e7c985}
.col-card{position:relative;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.col-card::after{content:"";position:absolute;inset:6px;border:1px solid rgba(201,163,91,0);pointer-events:none;transition:border-color .45s,inset .45s}
.col-card:hover{transform:translateY(-6px);box-shadow:0 26px 40px -26px rgba(20,12,4,.85)}
.col-card:hover::after{border-color:rgba(201,163,91,.55);inset:8px}
.col-img img{transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.col-card:hover .col-img img{transform:scale(1.07)}

/* icons draw themselves in */
svg.draw [pathLength]{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.8s cubic-bezier(.4,.1,.2,1)}
svg.draw.drawn [pathLength]{stroke-dashoffset:0}
.feat-strip li{transition:transform .35s}
.feat-strip li:hover{transform:translateY(-2px)}
.feat-strip li:hover .ic{color:#9d7638}
.feat-strip .ic{transition:color .3s}

/* heritage + cta depth */
.her-img img[data-parallax]{transform:scale(1.08);will-change:transform}
.sec-cta[data-parallax-bg]::before{transform:translateY(var(--shift,0)) scale(1.12);will-change:transform}

/* b2b: routes pulse on the map, counters underneath */
.sec-b2b{height:auto;padding-bottom:28px}
.b2b-routes{position:absolute;top:0;right:0;bottom:0;width:54%;pointer-events:none}
.b2b-routes i{position:absolute;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;background:#f2d390;box-shadow:0 0 8px 2px rgba(242,200,110,.7)}
.b2b-routes i::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(242,211,144,.8);animation:us-pulse 2.8s ease-out infinite}
.b2b-routes i:nth-child(2n)::after{animation-delay:.9s}
.b2b-routes i:nth-child(3n)::after{animation-delay:1.7s}
.b2b-routes .hub{width:8px;height:8px;margin:-4px 0 0 -4px;background:#fff1c9}
@keyframes us-pulse{0%{transform:scale(.4);opacity:1}100%{transform:scale(3.2);opacity:0}}
.b2b-stats{display:grid;grid-template-columns:repeat(4,auto);justify-content:start;gap:0;margin:22px 0 0 9px}
.b2b-stats>div{padding:0 34px 0 0;margin-right:34px;border-right:1px solid rgba(201,163,91,.3)}
.b2b-stats>div:last-child{border-right:0}
.b2b-stats dt{font-family:var(--display);font-size:30px;line-height:1;color:#e2c27e}
.b2b-stats dt b{font-weight:400}
.b2b-stats dd{margin:6px 0 0;font-family:var(--serif);font-size:10.6px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#cfc2ab}

/* from the armoury */
.sec-armoury{padding:34px 0 30px;background:linear-gradient(180deg,rgba(255,252,246,.55),rgba(255,252,246,0))}
.sec-armoury .wrap,.sec-journal .wrap{max-width:none;padding:0 var(--gut-r) 0 var(--gut-l)}
.arm-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.arm-head .sec-title{text-align:left}
.arm-head .sec-title .eyebrow.orn::before{display:none}
.arm-nav{display:flex;gap:10px}
.arm-nav button{width:42px;height:42px;display:grid;place-items:center;border:1px solid #c9a35b;border-radius:50%;color:#6d4a26;transition:background-color .3s,color .3s}
.arm-nav button:hover{background:var(--gold-grad);color:#24180b}
.arm-nav svg{width:18px;height:18px}
.arm-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 4 * 16px) / 5);gap:16px;margin-top:20px;padding:4px 2px 14px;
  overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;outline:none}
.arm-track::-webkit-scrollbar{display:none}
.arm-card{scroll-snap-align:start;display:flex;flex-direction:column;background:var(--ink);border:1px solid #2a2016;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.arm-card:hover{transform:translateY(-5px);box-shadow:0 24px 36px -24px rgba(20,12,4,.85)}
.arm-img{position:relative;display:block;aspect-ratio:576/699;overflow:hidden;background:#5d5a35}
.arm-img img{width:100%;height:100%;object-fit:contain;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.arm-card:hover .arm-img img{transform:scale(1.06)}
.arm-new{position:absolute;left:10px;top:10px;padding:5px 10px;background:var(--gold-grad);font-family:var(--serif);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#24180b}
.arm-txt{display:flex;flex-direction:column;gap:4px;padding:14px 16px 16px}
.arm-txt span{font-family:var(--serif);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#c9a35b}
.arm-txt b{font-family:var(--display);font-size:17px;font-weight:400;letter-spacing:.06em;color:#f3e7d0}
.arm-txt a{margin-top:6px;font-family:var(--serif);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#d1a862}
.arm-all{justify-content:center;align-items:center;gap:10px;padding:24px;text-align:center;
  background:radial-gradient(ellipse at 50% 30%,#2c1f12,var(--ink) 70%);border-color:#4a3a22}
.arm-all span{font-family:var(--serif);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#cfc2ab}
.arm-all b{font-family:var(--display);font-size:30px;font-weight:400;color:#e2c27e}
.arm-all em{font-style:normal;font-family:var(--serif);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#d1a862}

/* news on the home page */
.sec-journal{padding:6px 0 34px}
.jr-all{font-family:var(--serif);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dk)}
.jr-all:hover{color:#6d5022}
.sec-journal .nw-grid{margin-top:18px}

@media (max-width:1060px){
  .arm-track{grid-auto-columns:calc((100% - 2 * 16px) / 3)}
  .b2b-routes{width:100%;opacity:.5}
}
@media (max-width:900px){
  .embers{width:100%;opacity:.7}
  .b2b-stats{grid-template-columns:1fr 1fr;gap:18px 0;margin-left:0}
  .b2b-stats>div{margin:0;padding:0;border:0}
  .sec-armoury .wrap,.sec-journal .wrap{padding:0 var(--gut)}
}
@media (max-width:640px){
  .arm-track{grid-auto-columns:64%;gap:12px}
  .arm-nav{display:none}
  .arm-head{align-items:flex-start;flex-direction:column}
  .b2b-stats dt{font-size:26px}
}
@media (prefers-reduced-motion:reduce){
  .hero-home *,.hero-home .hero-art,.shimmer,.b2b-routes i::after{animation:none!important}
  .shimmer{color:#d9b46e;background:none}
  svg.draw [pathLength]{stroke-dashoffset:0;transition:none}
  .col-card,.arm-card,.col-img img,.arm-img img,.btn-gold::after,.btn-line::before{transition:none}
}

/* ============================================================ LIVELY INNER */
/* The home page's motion carried through the inner pages. CSS only for
   the hero entrance, so text never waits on script. */

/* hero entrance — page, compact (listings) and 404 heroes */
.hero-page .hero-art,.hero-compact .hero-art,.nf-hero .hero-art{animation:us-kenburns 14s cubic-bezier(.2,.7,.2,1) both;transform-origin:65% 45%}
.hero-page .crumbs,.nf-hero .eyebrow{animation:us-rise .7s .05s both}
.hero-page h1,.hero-compact .hero-title,.nf-hero h1{animation:us-rise .8s .12s both}
.hero-page .hero-sub,.hero-compact .hero-sub{animation:us-rise .8s .24s both}
.hero-orn,.hero-compact .hero-rule,.nf-hero .hero-rule{transform-origin:0 50%;animation:us-grow .9s .38s both}
.hero-page .hero-copy p,.hero-compact .hero-copy p,.nf-hero .hero-copy p{animation:us-rise .7s .42s both}
.nf-search,.nf-hero .hero-btns{animation:us-rise .7s .55s both}
.nf-num{animation:us-fade 1.6s .2s both}
.hero-page .hero-words li,.hero-compact .hero-words li{animation:us-rise .7s both}
.hero-page .hero-words li:nth-child(1),.hero-compact .hero-words li:nth-child(1){animation-delay:.5s}
.hero-page .hero-words li:nth-child(2),.hero-compact .hero-words li:nth-child(2){animation-delay:.6s}
.hero-page .hero-words li:nth-child(3),.hero-compact .hero-words li:nth-child(3){animation-delay:.7s}
.hero-page .hero-words li:nth-child(4),.hero-compact .hero-words li:nth-child(4){animation-delay:.8s}
.hero-page .hero-words::before,.hero-page .hero-words::after{animation:us-fade 1.2s .45s both}
.hero .embers{width:64%}
.hero .hero-in{z-index:2}

/* the gold words in a headline catch the light */
.hero-page h1 em,.nf-hero h1 em{background:linear-gradient(100deg,#d9b46e 0%,#d9b46e 42%,#fff1c9 50%,#d9b46e 58%,#d9b46e 100%);background-size:260% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;animation:us-shine 7s 1.6s infinite}

/* reveals: a little more travel and a softer ease */
.rv{transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}

/* cards share the collection cards' finish */
.cats-card,.pr-card,.nw-card,.arm-card,.vd-card,.pillar,.step,.tp-card,.sm-col,.family-grid figure{position:relative;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,border-color .45s}
.cats-card::after,.tp-card::after{content:"";position:absolute;inset:6px;border:1px solid rgba(201,163,91,0);pointer-events:none;transition:border-color .45s,inset .45s}
.cats-card:hover,.tp-card:hover{transform:translateY(-6px);box-shadow:0 26px 40px -26px rgba(20,12,4,.85)}
.cats-card:hover::after,.tp-card:hover::after{border-color:rgba(201,163,91,.55);inset:8px}
.cats-card .ci img,.pr-img img,.nw-media img,.vd-play img,.family-grid img,.in-media img{transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.cats-card:hover .ci img,.nw-card:hover .nw-media img{transform:scale(1.07)}
.pr-card:hover,.nw-card:hover,.vd-card:hover,.pillar:hover,.step:hover,.sm-col:hover,.family-grid figure:hover{transform:translateY(-5px);box-shadow:0 22px 36px -24px rgba(40,26,10,.6);border-color:#d8c49e}
.pr-card:hover .pr-img img{transform:scale(1.06)}
.family-grid figure{overflow:hidden}
.family-grid figure:hover img{transform:scale(1.03)}
.pillar .num,.step::before{transition:transform .45s,box-shadow .45s}
.step::before{display:inline-block}
.pillar:hover .num{transform:scale(1.08);box-shadow:0 0 0 3px #c79f5a,0 0 0 8px rgba(201,161,91,.18)}
.step:hover::before{transform:translateY(-3px)}
.cats-card:hover .arr,.pr-txt a:hover .arr,.nw-more:hover .arr,.nf-all a:hover .arr,.jr-all:hover .arr{transform:translateX(4px) translateY(-.04em)}
.arr{transition:transform .3s}

/* product photo: a soft gold sheen sweeps across on hover */
.pr-img::after{content:"";position:absolute;top:0;bottom:0;left:-80%;width:50%;background:linear-gradient(105deg,transparent,rgba(255,240,200,.28),transparent);transform:skewX(-18deg);transition:left .9s ease;pointer-events:none}
.pr-card:hover .pr-img::after{left:140%}

/* videos: the play button breathes */
@keyframes us-breathe{0%,100%{box-shadow:0 8px 24px rgba(0,0,0,.5),0 0 0 0 rgba(231,201,133,.5)}50%{box-shadow:0 8px 24px rgba(0,0,0,.5),0 0 0 12px rgba(231,201,133,0)}}
.vd-play span{animation:us-breathe 2.6s ease-in-out infinite;transition:transform .3s}
.vd-play:hover span{transform:translate(-50%,-50%) scale(1.08)}

/* sidebar: thumbnails lean in, the active row glows */
.side-thumb img{transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.side-list a:hover .side-thumb img{transform:translateX(3px) rotate(-3deg)}
.side-list .chev{transition:transform .3s}
.side-list a:hover .chev{transform:translateX(3px)}
.side-list a.on{background:linear-gradient(90deg,rgba(201,163,91,.16),rgba(255,252,246,.6))}

/* chips and filters */
.nw-filter a,.cul-chips a,.side-cul a,.nf-suggest a{transition:background-color .25s,color .25s,transform .25s,box-shadow .25s}
.nw-filter a:hover,.cul-chips a:hover{transform:translateY(-2px);box-shadow:0 8px 16px -10px rgba(20,12,4,.8)}

/* contact: icons ring on hover, fields glow gold on focus */
.ct-ic{transition:box-shadow .4s,transform .4s}
.ct-list>li:hover .ct-ic{transform:scale(1.06);box-shadow:0 0 0 3px #c9a15b,0 0 0 9px rgba(201,161,91,.16)}
.ct-field input,.ct-field select,.ct-field textarea{transition:border-color .25s,box-shadow .25s,background-color .25s}
.ct-field input:focus,.ct-field select:focus,.ct-field textarea:focus{background-color:#fff;box-shadow:0 0 0 3px rgba(200,161,90,.2),0 8px 18px -12px rgba(150,105,40,.55)}
.ct-submit svg{transition:transform .4s}
.ct-submit:hover svg{transform:translate(3px,-3px) rotate(-8deg)}

/* map and city photo */
.ct-city img{transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.ct-city:hover img{transform:scale(1.05)}

/* dark band on heritage: the sword of honour glints */
.honour img{transition:transform .6s,box-shadow .6s}
.honour img:hover{transform:translateY(-4px);box-shadow:0 24px 40px -20px rgba(0,0,0,.8)}

/* article: the figure eases in */
.ar-figure img{animation:us-fade 1s .2s both}

@media (max-width:900px){
  .hero .embers{width:100%;opacity:.6}
}
@media (prefers-reduced-motion:reduce){
  .hero *,.hero .hero-art,.vd-play span,.ar-figure img,.hero-page h1 em,.nf-hero h1 em{animation:none!important}
  .hero-page h1 em,.nf-hero h1 em{color:#d9b46e;background:none}
  .cats-card,.pr-card,.nw-card,.vd-card,.pillar,.step,.tp-card,.sm-col,.family-grid figure,.pr-img::after{transition:none}
}

/* ============================================================ LIVELY CONTACT */
/* cards: gilded corners and a soft inner light */
.ct-card{position:relative;background:linear-gradient(180deg,rgba(255,252,246,.78),rgba(250,244,234,.55));box-shadow:0 18px 40px -34px rgba(40,26,10,.7)}
.ct-card::before,.ct-card::after{content:"";position:absolute;width:26px;height:26px;border:1px solid #c9a35b;pointer-events:none;opacity:.8}
.ct-card::before{left:8px;top:8px;border-right:0;border-bottom:0}
.ct-card::after{right:8px;bottom:8px;border-left:0;border-top:0}

/* the office light */
.ct-live{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:12px;padding:9px 14px;border:1px solid #e2d6c1;background:rgba(255,255,255,.55);font-size:12.6px;color:#4a3d2e}
.ct-live .dot{width:9px;height:9px;border-radius:50%;background:#b0a28a;box-shadow:0 0 0 0 rgba(176,162,138,.5)}
.ct-live.open .dot{background:#3f9a4f;animation:us-live 2s ease-out infinite}
.ct-live .state{font-weight:700;color:#16100a}
.ct-live.open .state{color:#2f7a3c}
.ct-live .sep{color:#c9a35b}
@keyframes us-live{0%{box-shadow:0 0 0 0 rgba(63,154,79,.55)}100%{box-shadow:0 0 0 9px rgba(63,154,79,0)}}

/* detail rows arrive one after another once the card is in view */
.ct-card.rv .ct-list>li{opacity:0;transform:translateX(-12px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.ct-card.rv.in .ct-list>li{opacity:1;transform:none}
.ct-card.rv.in .ct-list>li:nth-child(2){transition-delay:.08s}
.ct-card.rv.in .ct-list>li:nth-child(3){transition-delay:.16s}
.ct-card.rv.in .ct-list>li:nth-child(4){transition-delay:.24s}
.ct-card.rv.in .ct-list>li:nth-child(5){transition-delay:.32s}
.ct-ic{position:relative}
.ct-ic::after{content:"";position:absolute;inset:-7px;border-radius:50%;border:1px dashed rgba(201,161,91,.55);opacity:0;transition:opacity .4s}
.ct-list>li:hover .ct-ic::after{opacity:1;animation:us-spin 9s linear infinite}
@keyframes us-spin{to{transform:rotate(360deg)}}

/* quick actions */
.ct-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:6px 0 14px}
.ct-quick a{display:flex;align-items:center;justify-content:center;gap:9px;height:42px;border:1px solid #c9a35b;font-family:var(--serif);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#4a3518;
  background:rgba(255,255,255,.5);transition:background-color .3s,color .3s,transform .3s,box-shadow .3s}
.ct-quick a svg{width:17px;height:17px}
.ct-quick a:hover{transform:translateY(-2px);box-shadow:0 12px 20px -14px rgba(40,26,10,.8)}
.ct-quick .q-call:hover,.ct-quick .q-mail:hover{background:var(--gold-grad);color:#24180b;border-color:#b78b45}
.ct-quick .q-wa{color:#1f7a3c;border-color:#7fbf8e}
.ct-quick .q-wa:hover{background:#25d366;color:#fff;border-color:#25d366}

/* form: reply promise, the chosen piece, captcha */
.ct-promise{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:12.6px;font-weight:600;color:#2f7a3c}
.ct-promise .dot{width:8px;height:8px;border-radius:50%;background:#3f9a4f;animation:us-live 2s ease-out infinite}
.ct-piece{display:flex;align-items:center;gap:14px;margin-top:12px;padding:10px 12px;border:1px solid #c9a35b;background:linear-gradient(90deg,rgba(201,163,91,.14),rgba(255,255,255,.6));animation:us-rise .6s both}
.ct-piece img{flex:0 0 52px;width:52px;height:64px;object-fit:contain;background:#5d5a35;border:1px solid #d6c4a2}
.ct-piece span{display:block;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#8a6936}
.ct-piece b{display:block;margin-top:2px;font-family:var(--display);font-size:20px;font-weight:500;letter-spacing:.06em;color:#16100a}
.ct-piece a{font-size:12.5px;color:var(--gold-dk)}
.ct-piece a:hover{text-decoration:underline}

.ct-captcha{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;margin-top:2px}
.ct-cap-img{position:relative;display:flex;align-items:center;gap:8px}
.ct-cap-img img{width:150px;height:auto;border:1px solid #d6c4a2;border-radius:3px;background:#f7f1e6}
.ct-cap-img button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #c9a35b;border-radius:50%;color:#6d4a26;transition:background-color .3s,color .3s}
.ct-cap-img button:hover{background:var(--gold-grad);color:#24180b}
.ct-cap-img button svg{width:16px;height:16px}
.ct-cap-img button.spin svg{animation:us-spin .6s ease}
.ct-cap-in input{letter-spacing:.3em;font-weight:600}
.ct-cap-help{font-size:11.5px!important;color:var(--muted)!important}
.ct-captcha.bad .ct-cap-img img{border-color:#b54434}

/* map and city */
.ct-city img{animation:us-kenburns 16s cubic-bezier(.2,.7,.2,1) both}
.ct-map-card{animation:us-rise .8s .3s both}

@media (max-width:640px){
  .ct-quick{grid-template-columns:repeat(3,1fr);gap:6px}
  .ct-quick a{height:44px;font-size:11px;gap:6px}
  .ct-captcha{grid-template-columns:1fr}
  .ct-live{font-size:12px}
}
@media (prefers-reduced-motion:reduce){
  .ct-live.open .dot,.ct-promise .dot,.ct-piece,.ct-city img,.ct-map-card,.ct-list>li:hover .ct-ic::after{animation:none}
  .ct-card.rv .ct-list>li{opacity:1;transform:none;transition:none}
}
.ct-piece a{display:inline-flex;align-items:center;gap:2px;white-space:nowrap}
@media (max-width:1060px){.ct-body.has-piece .ct-form-card{order:-1}}

/* ============================================================ PREMIUM NEWS */
/* filter tabs carry their counts; a line says what is showing */
.nw-filter a small{margin-left:7px;padding:1px 7px;border-radius:10px;background:rgba(224,189,119,.16);font-family:var(--serif);font-size:10.5px;font-weight:600;letter-spacing:0;color:#e7c985}
.nw-filter a.on small{background:rgba(36,24,11,.14);color:#3a2810}
.nw-count{margin-top:12px;font-size:13px;color:var(--muted)}
.nw-count b{color:#2b2116;font-weight:600}
.nw-count a{color:var(--gold-dk);text-decoration:underline}

/* cards: a gold rule draws across the top on hover, category gets a dot */
.nw-card{overflow:hidden}
.nw-card::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;z-index:3;background:linear-gradient(90deg,#b88c45,#f0d394,#b88c45);transform:scaleX(0);transform-origin:0 50%;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.nw-card:hover::before{transform:scaleX(1)}
.nw-cat{display:inline-flex;align-items:center;gap:6px}
.nw-cat::before{content:"";width:5px;height:5px;background:#c9a35b;transform:rotate(45deg)}
.nw-date{border-bottom:2px solid #c9a35b}
.nw-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,11,8,0) 55%,rgba(14,11,8,.35));opacity:0;transition:opacity .4s}
.nw-card:hover .nw-media::after{opacity:1}

/* the lead story: two columns by two rows, text over the picture */
.nw-grid.has-lead{grid-auto-flow:dense}
.nw-lead{grid-column:span 2;grid-row:span 2;height:auto!important;min-height:498px;background:#0f0c09;border-color:#2a2016}
.nw-lead .nw-media{position:absolute;inset:0;height:auto;flex:none}
.nw-lead .nw-media img{width:100%;height:100%;object-fit:cover}
.nw-lead .nw-media::after{opacity:1;background:linear-gradient(180deg,rgba(14,11,8,.05) 25%,rgba(14,11,8,.55) 55%,rgba(14,11,8,.94) 100%)}
.nw-lead .nw-date{width:58px;height:66px;padding-top:9px}
.nw-lead .nw-date b{font-size:26px}
.nw-flag{position:absolute;right:14px;top:14px;z-index:2;padding:6px 12px;background:var(--gold-grad);font-family:var(--serif);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#24180b}
.nw-lead .nw-txt{position:relative;z-index:2;margin-top:auto;padding:22px 26px 24px;pointer-events:none}
.nw-lead .nw-txt a,.nw-lead .nw-txt h2{pointer-events:auto}
.nw-lead .nw-cat{color:#e7c985}
.nw-lead .nw-txt h2{margin-top:8px;font-family:var(--display);font-size:30px;font-weight:400;line-height:1.15;color:#fbf6ec;-webkit-line-clamp:3}
.nw-lead .nw-txt h2 a:hover{color:#f0d394}
.nw-lead .nw-txt p{margin-top:8px;font-size:15px;line-height:21px;color:#e8dcc5;-webkit-line-clamp:3;max-width:560px}
.nw-lead .nw-txt .btn{margin-top:16px;height:36px;width:auto;padding:0 20px;font-size:11.5px}
.nw-lead:hover .nw-media img{transform:scale(1.04)}

/* ========================================================= PREMIUM ARTICLE */
.hero-article .hero-title{font-size:40px;line-height:1.12;white-space:normal;max-width:720px}
.hero-article .crumbs{margin-bottom:12px;font-size:12px}
.hero-article .hero-sub{font-size:15px;letter-spacing:.14em}

.ar-body{padding:26px 34px 30px 30px}
.ar-grid{grid-template-columns:minmax(0,1fr) 300px;gap:30px}
.ar-main{position:relative;padding:24px 30px 28px;background:linear-gradient(180deg,rgba(255,252,246,.85),rgba(250,244,234,.6));box-shadow:0 18px 40px -34px rgba(40,26,10,.7)}
.ar-main::before,.ar-main::after{content:"";position:absolute;width:26px;height:26px;border:1px solid #c9a35b;opacity:.8;pointer-events:none}
.ar-main::before{left:8px;top:8px;border-right:0;border-bottom:0}
.ar-main::after{right:8px;bottom:8px;border-left:0;border-top:0}
.ar-meta a{color:#8a6936}
.ar-meta a:hover{color:var(--gold-dk)}
.ar-meta>*+*::before{content:"◆";margin-right:14px;font-size:7px;vertical-align:2px;color:#c9a35b}
.ar-meta{gap:8px 14px}

.ar-figure{margin:16px 0 0;padding:10px;background:#fff;border:1px solid #e2d6c1;box-shadow:0 20px 34px -28px rgba(40,26,10,.8)}
.ar-zoom{position:relative;display:block;overflow:hidden;cursor:zoom-in;background:#1a130c}
.ar-zoom img{width:100%;max-height:620px;object-fit:contain;background:#f6f1e7;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.ar-zoom:hover img{transform:scale(1.02)}
.ar-zoom .zoom{position:absolute;right:12px;bottom:12px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:rgba(14,11,8,.75);color:#e7c985;opacity:0;transition:opacity .3s}
.ar-zoom:hover .zoom{opacity:1}
.ar-zoom .zoom svg{width:18px;height:18px}
.ar-figure figcaption{padding:10px 4px 2px;text-align:center;font-family:var(--italic);font-style:italic;font-size:17px;color:#5a4a36}

.ar-prose>p:first-of-type::first-letter{float:left;margin:6px 10px 0 0;font-family:var(--display);font-size:58px;line-height:.8;color:#9d7638}

.ar-piece{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:22px;padding:18px;background:radial-gradient(ellipse at 20% 40%,#2c1f12,#0f0c09 70%);border:1px solid #3a2c1a;color:var(--cream)}
.ar-piece-img{flex:0 0 120px;display:block;overflow:hidden;border:1px solid #4a3a22;background:#5d5a35}
.ar-piece-img img{width:120px;height:146px;object-fit:contain;background:#5d5a35;transition:transform 1s}
.ar-piece-img:hover img{transform:scale(1.06)}
.ar-piece-txt span{font-family:var(--serif);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#c9a35b}
.ar-piece-txt b{display:block;margin-top:4px;font-family:var(--display);font-size:28px;font-weight:400;letter-spacing:.06em;color:#f3e7d0}
.ar-piece-txt p{margin-top:6px;font-size:14.5px;line-height:21px;color:#d8ccb6}
.ar-piece-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.ar-piece-btns .btn{height:40px;padding:0 18px}

.ar-share{display:flex;align-items:center;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.ar-share>span{margin-right:6px;font-family:var(--serif);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8a6936}
.ar-share a,.ar-share button{position:relative;width:38px;height:38px;display:grid;place-items:center;border:1px solid #d6c4a2;border-radius:50%;color:#5a3f1a;background:rgba(255,255,255,.6);transition:background-color .3s,color .3s,transform .3s,border-color .3s}
.ar-share a:hover,.ar-share button:hover{background:var(--gold-grad);border-color:#b78b45;color:#24180b;transform:translateY(-2px)}
.ar-share svg{width:16px;height:16px}
.ar-share button em{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);padding:3px 8px;background:#16100a;color:#f3e7d0;font-style:normal;font-size:11px;white-space:nowrap;opacity:0;transition:opacity .25s;pointer-events:none}
.ar-share button.done em{opacity:1}

.ar-pn{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.ar-pn a{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid #e2d6c1;background:rgba(255,255,255,.55);transition:border-color .3s,transform .3s,box-shadow .3s}
.ar-pn a:hover{border-color:#c9a35b;transform:translateY(-2px);box-shadow:0 14px 22px -18px rgba(40,26,10,.7)}
.ar-pn-next{flex-direction:row-reverse;text-align:right}
.ar-pn img{flex:0 0 64px;width:64px;height:50px;object-fit:cover}
.ar-pn em{display:block;font-style:normal;font-family:var(--serif);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8a6936}
.ar-pn b{display:-webkit-box;margin-top:3px;font-weight:500;font-size:14.5px;line-height:1.3;color:#16100a;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.ar-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:20px}
.ar-box{padding:18px 20px;background:rgba(255,252,246,.75);border:1px solid #e2d6c1}
.ar-box h3{font-family:var(--display);font-size:17px;color:#16100a;padding-bottom:10px;border-bottom:1px solid var(--line)}
.ar-cats li a{display:flex;justify-content:space-between;padding:9px 2px;border-bottom:1px solid #ece2d0;font-size:15px;color:#2b2116;transition:color .25s,padding .25s}
.ar-cats li a:hover,.ar-cats li a.on{color:var(--gold-dk);padding-left:6px}
.ar-cats li a.on{font-weight:600}
.ar-cats small{font-size:12px;color:var(--muted)}
.ar-ask{background:radial-gradient(ellipse at 80% 0%,#2c1f12,#0f0c09 75%);border-color:#3a2c1a;color:var(--cream)}
.ar-ask .eyebrow{color:#c9a35b}
.ar-ask h3{margin-top:6px;border:0;padding:0;color:#f6ecda;font-size:19px;line-height:1.25}
.ar-ask p{margin-top:8px;font-size:14px;line-height:20px;color:#d5c9b2}
.ar-ask .btn{margin-top:14px;width:100%;height:40px}

.ar-related{margin-top:34px}
.ar-related .nw-grid{margin-top:16px}

@media (max-width:1060px){
  .ar-side{position:static}
}
@media (max-width:900px){
  .nw-lead{grid-column:auto;grid-row:auto;min-height:420px}
  .nw-lead .nw-txt h2{font-size:24px}
  .hero-article .hero-title{font-size:30px}
  .ar-pn{grid-template-columns:1fr}
  .ar-pn-next{flex-direction:row;text-align:left}
}
@media (max-width:640px){
  .ar-main{padding:18px 16px 22px}
  .ar-piece{flex-direction:column;align-items:flex-start}
  .ar-piece-btns .btn{width:100%}
  .hero-article .hero-title{font-size:26px}
  .nw-lead{min-height:380px}
  .nw-lead .nw-txt{padding:18px}
}
@media (prefers-reduced-motion:reduce){
  .nw-card::before,.ar-zoom img,.ar-piece-img img{transition:none}
}
.nw-lead .nw-txt{flex:0 0 auto}
.nw-lead{justify-content:flex-end}
.hero-article .hero-title{font-size:36px;max-width:600px}
.hero-article .hero-words{display:none}
.hero-article .hero-copy{max-width:640px}
.nobr{white-space:nowrap}
@media (max-width:1060px){
  .ar-grid{grid-template-columns:minmax(0,1fr)}
  .ar-body{padding:20px var(--gut) 26px}
}
@media (max-width:640px){.hero-article .crumbs{display:none}}

/* ============================================================ EXPORT GLOBE */
.globe{position:relative;align-self:center}
.globe canvas{display:block;width:100%;opacity:0;cursor:grab;touch-action:pan-y;transition:opacity 1s}
.globe canvas.grabbing{cursor:grabbing}
.globe.live canvas{opacity:1}
.globe-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:1px solid #3a2c1a;transition:opacity .8s}
.globe.live .globe-fallback{opacity:0;pointer-events:none}
.globe-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px;font-size:12px;letter-spacing:.06em;color:var(--muted)}
.globe-hint .dot{width:7px;height:7px;border-radius:50%;background:#c9a35b;animation:us-live 2s ease-out infinite}

/* the country list lights up as each route lands */
.countries li{cursor:pointer;transition:background-color .35s,color .35s,border-color .35s,transform .35s,box-shadow .35s}
.countries li:hover{border-color:#c9a35b;transform:translateY(-2px)}
.countries li.lit{background:var(--gold-grad);border-color:#b78b45;color:#24180b;box-shadow:0 8px 16px -10px rgba(150,105,40,.9);transform:translateY(-2px)}

.ex-stats{display:flex;flex-wrap:wrap;gap:0;margin-top:24px}
.ex-stats>div{padding:0 26px 0 0;margin-right:26px;border-right:1px solid var(--line)}
.ex-stats>div:last-child{border-right:0}
.ex-stats dt{font-family:var(--display);font-size:34px;line-height:1;color:#9d7638}
.ex-stats dt b{font-weight:400}
.ex-stats dd{margin:6px 0 0;font-family:var(--serif);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#5c4e3e}

@media (max-width:900px){
  .globe{max-width:520px;margin:0 auto;width:100%}
}
@media (max-width:640px){
  .ex-stats dt{font-size:28px}
  .ex-stats>div{padding-right:16px;margin-right:16px}
}
@media (prefers-reduced-motion:reduce){
  .globe-hint .dot{animation:none}
}

/* ============================================================ PREMIUM ABOUT */
/* gilded frames */
.her-frame{position:relative;padding:12px;background:#fff;border:1px solid #e2d6c1;box-shadow:0 26px 44px -30px rgba(40,26,10,.8)}
.her-frame::before{content:"";position:absolute;inset:4px;border:1px solid #c9a35b;pointer-events:none;z-index:2}
.her-frame img{display:block;width:100%;aspect-ratio:1.3;object-fit:cover}
.her-frame{overflow:hidden}
.her-story .her-frame{overflow:visible}
.her-story .her-frame img{clip-path:inset(0)}

/* the 1960 seal */
.her-seal{position:absolute;right:-26px;bottom:-30px;z-index:3;width:120px;height:120px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:radial-gradient(circle at 35% 30%,#2e2215,#0f0c09 70%);box-shadow:0 0 0 3px #c9a35b,0 0 0 7px rgba(201,163,91,.25),0 18px 30px -12px rgba(0,0,0,.6);color:#f0d394}
.her-seal svg{position:absolute;inset:0;width:100%;height:100%;animation:us-spin 28s linear infinite}
.her-seal text{font-family:var(--serif);font-size:7.4px;font-weight:600;letter-spacing:0;fill:#c9a35b}
.her-seal b{font-family:var(--display);font-size:28px;font-weight:500;line-height:1}
.her-seal small{order:-1;font-family:var(--serif);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#cfc2ab}

/* drop caps */
.her-drop>p:first-of-type::first-letter{float:left;margin:7px 10px 0 0;font-family:var(--display);font-size:60px;line-height:.78;color:#9d7638}

/* counters */
.her-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:40px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  background:linear-gradient(90deg,rgba(255,252,246,0),rgba(255,252,246,.7),rgba(255,252,246,0))}
.her-stats>div{text-align:center;border-right:1px solid var(--line)}
.her-stats>div:last-child{border-right:0}
.her-stats dt{font-family:var(--display);font-size:40px;line-height:1;color:#9d7638}
.her-stats dt b{font-weight:400}
.her-stats dd{margin:8px 0 0;font-family:var(--serif);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#5c4e3e}

/* the family quote on a dark band */
.her-quote{position:relative;margin:40px 0 0;padding:44px 60px;text-align:center;background:radial-gradient(ellipse at 50% 0%,#2c1f12,#0f0c09 70%);border:1px solid #3a2c1a;
  font-family:var(--italic);font-style:italic;font-weight:500;font-size:34px;line-height:1.3;color:#f3e7d0}
.her-quote span{font-family:var(--display);font-style:normal;font-size:70px;line-height:0;vertical-align:-.36em;color:#c9a35b;margin:0 8px}
.her-quote::before,.her-quote::after{content:"";position:absolute;width:26px;height:26px;border:1px solid #c9a35b;opacity:.8}
.her-quote::before{left:10px;top:10px;border-right:0;border-bottom:0}
.her-quote::after{right:10px;bottom:10px;border-left:0;border-top:0}

/* pillars get icons instead of numbers */
.her-pillars .pillar{padding-top:32px}
.pillar .pi{display:inline-grid;place-items:center;width:62px;height:62px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#2e2215,#0f0c09 70%);color:#e2c27e;
  box-shadow:0 0 0 3px #c79f5a,0 0 0 7px rgba(201,161,91,.15);transition:transform .45s,box-shadow .45s}
.pillar .pi svg{width:30px;height:30px}
.pillar:hover .pi{transform:translateY(-3px) scale(1.05);box-shadow:0 0 0 3px #c79f5a,0 0 0 10px rgba(201,161,91,.22)}

/* journey timeline */
.her-tl{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:10px;padding-top:48px}
.her-tl::before{content:"";position:absolute;left:4%;right:4%;top:58px;height:1px;background:linear-gradient(90deg,rgba(201,163,91,0),#c9a35b 10%,#c9a35b 90%,rgba(201,163,91,0))}
.her-tl li{position:relative;padding:28px 20px 22px;text-align:center;background:rgba(255,252,246,.75);border:1px solid #e2d6c1;transition:transform .45s,box-shadow .45s,border-color .45s}
.her-tl li:hover{transform:translateY(-5px);box-shadow:0 22px 36px -24px rgba(40,26,10,.6);border-color:#d8c49e}
.her-tl .yr{position:absolute;left:50%;top:-48px;transform:translateX(-50%);font-family:var(--display);font-size:22px;color:#9d7638;white-space:nowrap}
.her-tl .knot{position:absolute;left:50%;top:-16px;width:14px;height:14px;margin-left:-7px;background:var(--gold-grad);transform:rotate(45deg);box-shadow:0 0 0 4px #f2e9da,0 0 0 5px #c9a35b}
.her-tl h3{font-family:var(--display);font-size:17px;color:#16100a}
.her-tl p{margin-top:8px;font-size:15px;line-height:1.5;color:var(--text-2)}

/* craft: the picture stays beside the long text */
.her-craft{align-items:start}
.her-sticky{position:sticky;top:30px}
.her-sticky img{aspect-ratio:.95}

/* sword of honour */
.honour-frame{margin:0;padding:10px;background:linear-gradient(135deg,#e7c985,#b88c45);box-shadow:0 26px 44px -22px rgba(0,0,0,.8);transform:rotate(1.5deg);transition:transform .6s}
.honour-frame:hover{transform:rotate(0) translateY(-4px)}
.honour-frame img{display:block;width:100%;border:0}
.honour .prose p:first-child{font-size:19px}

/* family: double gold frame */
.family-grid figure{padding:10px 10px 0;background:#fff;box-shadow:0 18px 30px -24px rgba(40,26,10,.7)}
.family-grid figure img{outline:1px solid #c9a35b;outline-offset:3px}
.family-grid figcaption{font-family:var(--italic);font-style:italic;font-size:17px;letter-spacing:0}

/* memberships as seals */
.her-members{background:linear-gradient(90deg,rgba(255,252,246,.9),rgba(250,244,234,.6))}
.her-members li{display:flex;align-items:center;gap:14px;padding:6px 0 6px 0}
.her-members li::before{display:none}
.her-members .badge{flex:0 0 54px;height:54px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,#2e2215,#0f0c09 70%);
  box-shadow:0 0 0 2px #c79f5a,0 0 0 5px rgba(201,161,91,.15);font-family:var(--display);font-size:12.5px;letter-spacing:.06em;color:#e2c27e}
.her-members .signature{font-size:30px}

@media (max-width:1060px){
  .her-tl{grid-template-columns:1fr 1fr;row-gap:60px}
  .her-tl::before{display:none}
  .her-sticky{position:relative;top:0}
}
@media (max-width:900px){
  .her-stats{grid-template-columns:1fr 1fr;row-gap:22px}
  .her-stats>div:nth-child(2){border-right:0}
  .her-quote{padding:34px 24px;font-size:26px}
  .her-seal{right:10px;bottom:-24px;width:96px;height:96px}
  .her-seal b{font-size:22px}
}
@media (max-width:640px){
  .her-tl{grid-template-columns:1fr}
  .her-stats dt{font-size:30px}
  .her-quote{font-size:22px}
  .her-quote span{font-size:48px}
  .honour-frame{transform:none}
}
@media (prefers-reduced-motion:reduce){
  .her-seal svg{animation:none}
}


/* family photos: three equal cards — same width, same picture box, same caption height */
.family-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.family-grid figure{display:flex;flex-direction:column;height:100%}
.family-grid img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 30%;background:#fff}
.family-grid figure:first-child img{object-fit:contain}
.family-grid figcaption{flex:1;display:flex;align-items:center;justify-content:center;min-height:76px;padding:12px 8px 14px;line-height:1.35}
@media (max-width:900px){
  .family-grid{grid-template-columns:1fr}
  .family-grid figcaption{min-height:0}
}
/* 3:2 suits all three; the wide group photo and the portrait painting are
   shown whole rather than cropped */
.family-grid img{aspect-ratio:3/2}
.family-grid figure:nth-child(2) img{object-fit:contain}

/* ============================================================ PREMIUM LEGAL */
.lg-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:34px;align-items:start}
.lg-toc{position:sticky;top:24px;padding:20px 18px;background:rgba(255,252,246,.8);border:1px solid #e2d6c1;border-top:3px solid #c9a35b}
.lg-toc .eyebrow{display:block;margin-bottom:10px}
.lg-toc li a{display:flex;gap:10px;padding:8px 6px;border-bottom:1px solid #ece2d0;font-size:14.5px;line-height:1.3;color:#2b2116;transition:color .25s,background-color .25s,padding .25s}
.lg-toc li a b{flex:0 0 auto;font-family:var(--display);font-weight:400;font-size:13px;color:#b38a4a}
.lg-toc li a:hover,.lg-toc li a.on{color:#7a5526;background:rgba(201,163,91,.12);padding-left:10px}
.lg-toc li a.on{font-weight:600}
.lg-other{display:inline-flex;margin-top:14px;font-family:var(--serif);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dk)}
.lg-other:hover .arr{transform:translateX(4px)}

.lg-main{position:relative;padding:26px 34px 30px;background:linear-gradient(180deg,rgba(255,252,246,.88),rgba(250,244,234,.62));border:1px solid #e2d6c1;box-shadow:0 18px 40px -34px rgba(40,26,10,.7)}
.lg-main::before,.lg-main::after{content:"";position:absolute;width:26px;height:26px;border:1px solid #c9a35b;opacity:.8;pointer-events:none}
.lg-main::before{left:8px;top:8px;border-right:0;border-bottom:0}
.lg-main::after{right:8px;bottom:8px;border-left:0;border-top:0}
.lg-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding-bottom:14px;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#8a6936}
.lg-meta b{color:#2b2116}
.lg-meta>span+span::before{content:"◆";margin-right:18px;font-size:7px;vertical-align:2px;color:#c9a35b}
.lg-print{display:inline-flex;align-items:center;gap:6px;margin-left:auto;height:32px;padding:0 14px;border:1px solid #c9a35b;font:inherit;color:#5a3f1a;transition:background-color .3s,color .3s}
.lg-print:hover{background:var(--gold-grad);color:#24180b}
.lg-print svg{width:15px;height:15px}
.lg-intro{margin-top:18px;font-size:20px;line-height:1.6;color:#2b2116}
.lg-intro p:first-child::first-letter{float:left;margin:6px 10px 0 0;font-family:var(--display);font-size:56px;line-height:.8;color:#9d7638}

.lg-sec{display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;padding:22px 0;border-bottom:1px solid #ece2d0;scroll-margin-top:24px}
.lg-sec:last-of-type{border-bottom:0}
.lg-num{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#2e2215,#0f0c09 70%);box-shadow:0 0 0 2px #c79f5a,0 0 0 5px rgba(201,161,91,.15);
  font-family:var(--display);font-size:14px;color:#e2c27e;transition:transform .4s}
.lg-sec:hover .lg-num{transform:scale(1.08)}
.lg-sec h2{font-family:var(--display);font-size:22px;line-height:1.25;color:#16100a}
.lg-sec .prose{margin-top:8px;font-size:17.5px;line-height:1.65}
.lg-sec .prose p{margin:0 0 .8em}

.lg-ask{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding:22px 24px;background:radial-gradient(ellipse at 15% 20%,#2c1f12,#0f0c09 70%);border:1px solid #3a2c1a;color:var(--cream)}
.lg-ask .eyebrow{color:#c9a35b}
.lg-ask h3{margin-top:6px;font-family:var(--display);font-size:20px;color:#f6ecda}
.lg-ask p{margin-top:6px;font-size:15px;color:#d5c9b2}
.lg-ask a:not(.btn){color:#e7c985;text-decoration:underline}
.lg-ask .btn{flex:0 0 auto}

@media (max-width:1060px){
  .lg-grid{grid-template-columns:1fr}
  .lg-toc{position:static}
}
@media (max-width:640px){
  .lg-main{padding:18px 16px 22px}
  .lg-sec{grid-template-columns:1fr;gap:8px}
  .lg-intro{font-size:17.5px}
  .lg-ask{flex-direction:column;align-items:flex-start}
  .lg-print{margin-left:0}
}
@media print{
  .topbar,.site-head,.product-side,.hero,.lg-toc,.lg-ask,.site-foot,.to-top,.side-tab,.scroll-line,.lg-print{display:none!important}
  .page-cols{display:block}
  .lg-main{border:0;box-shadow:none;background:none;padding:0}
  .lg-main::before,.lg-main::after{display:none}
  .rv{opacity:1!important;transform:none!important}
}

/* ============================================================ PREMIUM VIDEOS */
.vd-feature{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:0;background:radial-gradient(ellipse at 80% 0%,#2c1f12,#0f0c09 70%);border:1px solid #3a2c1a;
  box-shadow:0 30px 50px -36px rgba(20,12,4,.9)}
.vd-feature-media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#000}
.vd-feature-media img{width:100%;height:100%;object-fit:cover;opacity:.9;transition:transform 1.4s cubic-bezier(.2,.7,.2,1),opacity .4s}
.vd-feature-media:hover img{transform:scale(1.04);opacity:1}
.vd-feature-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,12,9,0) 60%,rgba(15,12,9,.9))}
.vd-tag{position:absolute;left:14px;top:14px;z-index:2;padding:6px 12px;background:var(--gold-grad);font-family:var(--serif);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#24180b}
.vd-btn{position:absolute;left:50%;top:50%;z-index:2;width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:var(--gold-grad);color:#24180b;
  transform:translate(-50%,-50%);animation:us-breathe 2.6s ease-in-out infinite;transition:transform .3s}
.vd-btn svg{width:26px;height:26px;margin-left:4px}
.vd-feature-media:hover .vd-btn,.vd-frame:hover .vd-btn{transform:translate(-50%,-50%) scale(1.1)}
.vd-feature-txt{display:flex;flex-direction:column;justify-content:center;padding:28px 30px;color:var(--cream)}
.vd-feature-txt .eyebrow{color:#c9a35b}
.vd-feature-txt h2{margin-top:8px;font-family:var(--display);font-size:30px;line-height:1.15;color:#f6ecda}
.vd-feature-txt .prose{margin-top:12px;font-size:15.5px;line-height:1.6;color:#d8ccb6;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.vd-feature-txt .prose strong{color:#f0d394}
.vd-feature-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.vd-feature-btns .btn{height:42px}
.vd-feature-btns .btn svg{width:15px;height:15px}

.vd-head{display:flex;align-items:center;justify-content:space-between;margin:34px 0 4px}
.vd-head .title-orn{justify-content:flex-start}
.vd-head .title-orn::before{display:none}

.vd-card{background:#0f0c09;border-color:#2a2016;overflow:hidden}
.vd-card .vd-frame{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:#000}
.vd-card .vd-frame img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:transform 1.4s cubic-bezier(.2,.7,.2,1),opacity .4s}
.vd-card:hover .vd-frame img{transform:scale(1.06);opacity:1}
.vd-card .vd-btn{width:54px;height:54px}
.vd-card .vd-btn svg{width:20px;height:20px}
.vd-code{position:absolute;right:10px;bottom:10px;z-index:2;padding:4px 9px;background:rgba(14,11,8,.8);border:1px solid rgba(201,163,91,.6);font-family:var(--display);font-size:12px;letter-spacing:.06em;color:#e7c985}
.vd-card .vd-txt{padding:14px 16px 16px}
.vd-card .vd-txt h3{font-family:var(--display);font-size:16px;font-weight:400;line-height:1.3;color:#f3e7d0}
.vd-card .vd-txt p{margin-top:8px;font-size:14px;line-height:1.5;color:#cfc2ab;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.vd-links{display:flex;gap:16px;margin-top:12px}
.vd-links button,.vd-links a{font-family:var(--serif);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#d1a862}
.vd-links button:hover .arr{transform:translateX(4px)}
.vd-links a{color:#cfc2ab;border-bottom:1px solid currentColor}
.vd-links a:hover{color:#f0d394}
.vd-card:hover{border-color:#4a3a22}

.vd-channel{display:flex;align-items:center;gap:20px;margin-top:30px;padding:22px 26px;background:linear-gradient(90deg,rgba(255,252,246,.9),rgba(250,244,234,.6));border:1px solid #e2d6c1;border-left:3px solid #c9a35b}
.vd-yt{flex:0 0 56px;width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:#c4302b;color:#fff;box-shadow:0 0 0 4px rgba(196,48,43,.15)}
.vd-yt svg{width:28px;height:28px}
.vd-channel h3{margin-top:4px;font-family:var(--display);font-size:20px;color:#16100a}
.vd-channel .btn{margin-left:auto;flex:0 0 auto}

.vd-box figure{width:min(1000px,100%)}
.vd-player{position:relative;width:100%;aspect-ratio:16/9;background:#000;box-shadow:0 30px 70px rgba(0,0,0,.7)}
.vd-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vd-box figcaption a{font-family:var(--serif);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#e7c985}

/* ====================================================== PREMIUM CUSTOM ORDERS */
.co-intro{align-items:center}
.co-lead{font-size:18.5px!important;line-height:1.65!important}
.co-frame img{aspect-ratio:1.25}
.co-frame{overflow:visible}
.co-frame img{clip-path:inset(0)}
.co-badge{position:absolute;left:-22px;bottom:-24px;z-index:3;width:104px;height:104px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:radial-gradient(circle at 35% 30%,#2e2215,#0f0c09 70%);box-shadow:0 0 0 3px #c9a35b,0 0 0 7px rgba(201,163,91,.25),0 18px 30px -12px rgba(0,0,0,.6);
  font-family:var(--serif);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#cfc2ab}
.co-badge b{font-family:var(--display);font-size:22px;font-weight:500;letter-spacing:.04em;text-transform:none;color:#f0d394}

.co-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:36px}
.co-services li{display:flex;align-items:center;gap:14px;padding:14px 16px;background:rgba(255,252,246,.8);border:1px solid #e2d6c1;font-size:16px;color:#2b2116;
  transition:transform .4s,box-shadow .4s,border-color .4s}
.co-services li:hover{transform:translateY(-3px);box-shadow:0 16px 26px -20px rgba(40,26,10,.7);border-color:#c9a35b}
.co-services .ic{flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,#2e2215,#0f0c09 70%);color:#e2c27e;box-shadow:0 0 0 2px #c79f5a}
.co-services .ic svg{width:20px;height:20px}

.co-band{position:relative;margin-top:40px;padding:56px 40px;text-align:center;overflow:hidden;background:#fff var(--band) center/cover no-repeat;border:1px solid #e2d6c1}
.co-band::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(247,241,230,.9))}
.co-band>*{position:relative}
.co-band h2{margin-top:10px;font-family:var(--display);font-size:32px;line-height:1.2;color:#16100a}
.co-band .eyebrow{color:#8a3a2c}

.co-wf{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:22px;padding:18px 22px;border:1px dashed #c9a35b;background:rgba(201,163,91,.06)}
.co-wf h3{font-family:var(--display);font-size:18px;color:#16100a;margin-right:6px}
.co-wf ul{display:flex;flex-wrap:wrap;gap:8px}
.co-wf li{padding:7px 14px;border:1px solid #d6c4a2;background:#fff;font-family:var(--serif);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#4a3518}

.co-steps{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:none}
.co-steps::before{content:"";position:absolute;left:12%;right:12%;top:38px;height:1px;background:repeating-linear-gradient(90deg,#c9a35b 0 6px,transparent 6px 12px)}
.co-steps li{position:relative;text-align:center;padding:0 10px}
.co-step-ic{position:relative;display:inline-grid;place-items:center;width:76px;height:76px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#2e2215,#0f0c09 70%);color:#e2c27e;
  box-shadow:0 0 0 3px #c79f5a,0 0 0 9px #f2e9da,0 0 0 10px rgba(201,161,91,.4);transition:transform .45s}
.co-step-ic svg{width:32px;height:32px}
.co-step-ic b{position:absolute;right:-8px;top:-6px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--gold-grad);font-family:var(--display);font-size:11px;font-weight:600;color:#24180b}
.co-steps li:hover .co-step-ic{transform:translateY(-4px) scale(1.04)}
.co-steps h3{margin-top:18px;font-family:var(--display);font-size:18px;color:#16100a}
.co-steps p{margin-top:8px;font-size:15.5px;line-height:1.5;color:var(--text-2)}

.co-for{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.co-start{margin-top:40px}

@media (max-width:1060px){
  .vd-feature{grid-template-columns:1fr}
  .vd-feature-media::after{background:linear-gradient(180deg,rgba(15,12,9,0) 60%,rgba(15,12,9,.7))}
  .co-services{grid-template-columns:1fr 1fr}
  .co-steps{grid-template-columns:1fr 1fr;row-gap:30px}
  .co-steps::before{display:none}
}
@media (max-width:640px){
  .vd-feature-txt{padding:20px 18px}
  .vd-feature-txt h2{font-size:24px}
  .vd-channel{flex-direction:column;align-items:flex-start}
  .vd-channel .btn{margin-left:0}
  .co-services,.co-steps,.co-for{grid-template-columns:1fr}
  .co-band{padding:40px 18px}
  .co-band h2{font-size:24px}
  .co-badge{left:10px;width:86px;height:86px}
}
@media (prefers-reduced-motion:reduce){
  .vd-btn{animation:none}
}
.co-band{background-position:center 85%}
.co-band::before{background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(247,241,230,.95))}

/* ============================================================ ENQUIRY LIST */
/* Add buttons */
.enq-add{display:inline-flex;align-items:center;gap:5px;font-family:var(--serif);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dk);
  padding:5px 10px;border:1px solid #c9a35b;background:rgba(255,255,255,.6);transition:background-color .25s,color .25s,border-color .25s,transform .25s}
.enq-add .on-off{font-size:14px;line-height:1}
.enq-add:hover{background:var(--gold-grad);color:#24180b;border-color:#b78b45}
.enq-add.added{background:#2f6b3a;border-color:#2f6b3a;color:#fff}
.enq-add.added:hover{background:#7a2e22;border-color:#7a2e22}
.enq-add.enq-dark{margin-top:8px;align-self:flex-start;background:transparent;color:#d1a862;border-color:rgba(201,163,91,.6)}
.enq-add.enq-dark:hover{background:var(--gold-grad);color:#24180b}
.enq-add.enq-dark.added{background:#2f6b3a;color:#fff;border-color:#2f6b3a}
/* .arm-txt span colours every span in a card: the button's label must follow the button. */
.arm-txt .enq-add span{color:inherit}
.enq-add.enq-big{padding:0 18px;letter-spacing:.08em}
.btn.enq-add.added{background:#2f6b3a;border-color:#2f6b3a;color:#fff}
.lbox figcaption .btn-line{color:#e7c985}

/* the floating list */
.enq-dock{position:fixed;right:22px;bottom:80px;z-index:75;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.enq-pill{display:inline-flex;align-items:center;gap:9px;height:46px;padding:0 18px;border-radius:30px;background:#0f0c09;border:1px solid #c9a35b;color:#f0d394;
  font-family:var(--serif);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 14px 30px -12px rgba(0,0,0,.6);transition:transform .25s}
.enq-pill svg{width:18px;height:18px}
.enq-pill b{min-width:22px;height:22px;padding:0 6px;display:grid;place-items:center;border-radius:11px;background:var(--gold-grad);color:#24180b;font-size:12px;letter-spacing:0}
.enq-pill:hover{transform:translateY(-2px)}
.enq-pill.bump{animation:us-bump .5s ease}
@keyframes us-bump{0%{transform:scale(1)}35%{transform:scale(1.12)}100%{transform:scale(1)}}
.enq-panel{width:320px;max-height:min(460px,70vh);display:flex;flex-direction:column;background:#fbf7f0;border:1px solid #c9a35b;box-shadow:0 24px 50px -18px rgba(0,0,0,.55);order:-1}
.enq-panel-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:var(--gold-grad);color:#24180b;font-family:var(--display);font-size:15px}
.enq-panel-head button{font-size:22px;line-height:1;color:#24180b}
.enq-panel ul{flex:1;overflow-y:auto;padding:6px 12px}
.enq-panel-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-top:1px solid var(--line)}
.enq-panel-foot .btn{height:38px;padding:0 16px}
.enq-clear{font-size:13px;color:var(--muted);text-decoration:underline}

/* rows, shared by the panel and the contact form */
#enqItems li,.ct-items li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #ece2d0}
#enqItems li:last-child,.ct-items li:last-child{border-bottom:0}
#enqItems .im,.ct-items .im{flex:0 0 40px;width:40px;height:48px;background:#5d5a35;border:1px solid #d6c4a2;overflow:hidden}
#enqItems .im img,.ct-items .im img{width:100%;height:100%;object-fit:contain;background:#5d5a35}
#enqItems .tx,.ct-items .tx{flex:1;min-width:0}
#enqItems .tx b,.ct-items .tx b{display:block;font-family:var(--display);font-size:15px;font-weight:500;letter-spacing:.05em;color:#16100a}
#enqItems .tx small,.ct-items .tx small{display:block;font-size:12.5px;color:var(--muted)}
#enqItems .rm,.ct-items .rm{width:28px;height:28px;border-radius:50%;border:1px solid #d6c4a2;font-size:18px;line-height:1;color:#7a2e22;transition:background-color .25s,color .25s}
#enqItems .rm:hover,.ct-items .rm:hover{background:#7a2e22;color:#fff}

/* on the contact form */
.ct-list-field>span small{margin-left:6px;padding:1px 8px;border-radius:10px;background:var(--gold-grad);font-size:11px;color:#24180b}
.ct-list-field>span small:empty{display:none}
.ct-items{max-height:250px;overflow-y:auto;padding:2px 12px;border:1px solid #e0d3bd;background:#fbf8f2;border-radius:3px}
.ct-items:empty{display:none}
.ct-items-empty{padding:10px 12px;border:1px dashed #d6c4a2;font-size:13px;color:var(--muted)}
.ct-add{display:flex;gap:8px;margin-top:6px}
.ct-add input{flex:1;min-width:0;height:36px;padding:0 12px;background:#fbf8f2;border:1px solid #e0d3bd;border-radius:3px;font-size:13.4px;outline:none}
.ct-add input:focus{border-color:var(--gold)}
.ct-add .btn{height:36px;padding:0 16px;color:var(--gold-dk)}

.pr-txt .enq-add{flex:0 0 auto;border-bottom:1px solid #c9a35b}
@media (max-width:640px){
  .enq-dock{right:12px;bottom:76px}
  .enq-panel{width:calc(100vw - 24px)}
  .ct-add input{font-size:16px}
}

/* ======================================================= PREMIUM COLLECTIONS */
.cl-stats{margin-top:6px}
.cl-sec{margin-top:44px}
.cl-sec-head{text-align:center;margin-bottom:20px}
.cl-sec-head h2{margin-top:4px;font-family:var(--display);font-size:32px;color:#16100a}
.cl-sec-head p{margin-top:4px;font-family:var(--serif);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#8a6936}

.cl-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.cl-grid.has-feature{grid-auto-flow:dense}
.cl-card{position:relative;display:flex;flex-direction:column;background:#0f0c09;border:1px solid #2a2016;overflow:hidden;
  transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.cl-card::after{content:"";position:absolute;inset:6px;border:1px solid rgba(201,163,91,0);pointer-events:none;transition:border-color .45s,inset .45s;z-index:3}
.cl-card:hover{transform:translateY(-6px);box-shadow:0 28px 44px -28px rgba(20,12,4,.9)}
.cl-card:hover::after{border-color:rgba(201,163,91,.6);inset:8px}
.cl-img{position:relative;display:block;aspect-ratio:1.05;overflow:hidden;background:#5d5a35}
.cl-img>img{width:100%;height:100%;object-fit:contain;transition:transform 1.4s cubic-bezier(.2,.7,.2,1),filter .5s}
.cl-card:hover .cl-img>img{transform:scale(1.07);filter:brightness(.72)}
.cl-count{position:absolute;right:10px;top:10px;z-index:2;padding:5px 10px;background:rgba(14,11,8,.75);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  border:1px solid rgba(201,163,91,.5);font-family:var(--serif);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#e7c985}
/* three more pieces from the collection slide up on hover */
.cl-peek{position:absolute;left:10px;right:10px;bottom:10px;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;
  opacity:0;transform:translateY(14px);transition:opacity .45s,transform .45s cubic-bezier(.2,.7,.2,1)}
.cl-peek img{width:100%;aspect-ratio:.82;object-fit:contain;background:#5d5a35;border:1px solid rgba(231,201,133,.7);box-shadow:0 8px 16px -8px rgba(0,0,0,.8)}
.cl-card:hover .cl-peek{opacity:1;transform:none}
.cl-peek img:nth-child(2){transition-delay:.05s}
.cl-txt{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:16px 10px 16px;text-align:center}
.cl-no{position:absolute;left:12px;top:12px;font-family:var(--display);font-size:13px;color:#6f5530}
.cl-txt b{font-family:var(--display);font-size:16.5px;font-weight:400;letter-spacing:.06em;color:#f3e7d0}
.cl-txt>span:not(.cl-no){font-size:14px;color:#cfc2ab}
.cl-txt em{margin-top:6px;font-style:normal;font-family:var(--serif);font-size:10.6px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#d1a862}
.cl-card:hover .cl-txt em .arr{transform:translateX(4px)}

/* the first arms collection leads: two columns by two rows */
.cl-feature{grid-column:span 2;grid-row:span 2}
.cl-feature .cl-img{flex:1;aspect-ratio:auto;min-height:340px}
.cl-feature .cl-txt{padding:22px 18px}
.cl-feature .cl-txt b{font-size:26px}
.cl-feature .cl-txt>span:not(.cl-no){font-size:16px}
.cl-feature .cl-peek{left:16px;right:16px;bottom:16px;gap:10px}

.cl-cultures{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.cl-cultures a{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:130px;padding:16px;overflow:hidden;
  background:radial-gradient(ellipse at 50% 0%,#2c1f12,#0f0c09 72%);border:1px solid #3a2c1a;transition:transform .4s,border-color .4s,box-shadow .4s}
.cl-cultures a.has-bg::before{content:"";position:absolute;inset:0;background:var(--bg) center/cover no-repeat;opacity:.45;transition:opacity .5s,transform 1.2s cubic-bezier(.2,.7,.2,1)}
.cl-cultures a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,12,9,0) 20%,rgba(15,12,9,.9))}
.cl-cultures a>*{position:relative;z-index:1}
.cl-cultures a:hover{transform:translateY(-4px);border-color:#c9a35b;box-shadow:0 20px 30px -20px rgba(0,0,0,.8)}
.cl-cultures a.has-bg:hover::before{opacity:.65;transform:scale(1.06)}
.cl-cultures b{font-family:var(--display);font-size:18px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:#f3e7d0}
.cl-cultures span{margin-top:3px;font-size:13.5px;color:#d9b46e}
.cl-cultures em{position:absolute;right:14px;bottom:14px;font-style:normal;font-size:18px;color:#d9b46e;transition:transform .3s}
.cl-cultures a:hover em{transform:translateX(4px)}

/* ======================================================== PREMIUM CATEGORY */
.hero-cat .hero-title{font-size:56px}
.hero-thin{font-weight:400;color:#f3e7d0;-webkit-text-fill-color:#f3e7d0}
.cat-intro{display:flex;align-items:center;gap:0;padding:16px 0;border-bottom:1px solid var(--line)}
.cat-stat{padding:0 24px;border-right:1px solid var(--line);text-align:center}
.cat-stat:first-child{padding-left:0}
.cat-stat b{display:block;font-family:var(--display);font-size:30px;font-weight:400;line-height:1;color:#9d7638}
.cat-stat span{display:block;margin-top:5px;font-family:var(--serif);font-size:10.6px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#5c4e3e}
.cat-intro p{flex:1;padding-left:24px;font-size:15.5px;line-height:1.5;color:var(--text-2)}
.cat-intro p b{color:#7a5526}
.cul-others{margin-top:10px}
.cul-others a{background:transparent;color:#5a3f1a;border-color:#d6c4a2}
.cul-others a small{color:var(--muted)}
.cul-others a:hover{background:var(--ink-2);color:var(--gold-lt);border-color:var(--ink-2)}

/* toolbar */
.pr-tools{display:flex;align-items:center;gap:16px;margin-top:22px;padding:10px 14px;background:rgba(255,252,246,.8);border:1px solid #e2d6c1}
.pr-showing{margin-right:auto;font-size:14px;color:var(--muted)}
.pr-showing b{color:#2b2116}
.pr-sort{display:flex;align-items:center;gap:8px;font-family:var(--serif);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8a6936}
.pr-sort select{height:34px;padding:0 34px 0 12px;appearance:none;-webkit-appearance:none;border:1px solid #d6c4a2;border-radius:2px;font-size:14px;letter-spacing:0;text-transform:none;color:#2b2116;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%232b2116' stroke-width='1.6'/%3E%3C/svg%3E") right 12px center/10px 7px no-repeat}
.pr-size{display:flex;border:1px solid #d6c4a2}
.pr-size button{width:34px;height:32px;display:grid;place-items:center;color:#8a7a62;transition:background-color .25s,color .25s}
.pr-size button svg{width:15px;height:15px}
.pr-size button.on{background:var(--gold-grad);color:#24180b}
.pr-grid.is-sm{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.pr-grid.is-sm .pr-txt{padding:8px 10px;flex-direction:column;align-items:flex-start;gap:6px}
.pr-grid.is-sm .pr-txt b{font-size:13px}

/* card: the second angle on hover, "View" and angle badges */
.pr-img .alt{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#5d5a35;opacity:0;transition:opacity .6s ease}
.pr-card:hover .pr-img.has-alt .alt{opacity:1}
.pr-card:hover .pr-img.has-alt img:first-child{transform:none}
.pr-view{position:absolute;left:50%;bottom:14px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:rgba(14,11,8,.82);border:1px solid rgba(201,163,91,.6);
  font-family:var(--serif);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#f0d394;opacity:0;transform:translate(-50%,8px);transition:opacity .35s,transform .35s}
.pr-view svg{width:14px;height:14px}
.pr-card:hover .pr-view{opacity:1;transform:translate(-50%,0)}
.pr-angles{position:absolute;left:10px;top:10px;z-index:2;padding:3px 8px;background:rgba(255,252,246,.85);font-family:var(--serif);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5a3f1a}
.pr-img .zoom{display:none}
.pr-card.rv{transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1),box-shadow .45s}

/* load more */
.pr-more{margin-top:26px;text-align:center}
.pr-more .btn{min-width:240px}
.pr-more .btn.loading{opacity:.7;pointer-events:none}
.pr-more .btn.loading .arr{animation:us-spin 1s linear infinite;display:inline-block}

/* custom band + other collections */
.mc-custom{display:flex;align-items:center;gap:18px;margin-top:40px;padding:20px 24px;background:radial-gradient(ellipse at 15% 20%,#2c1f12,#0f0c09 70%);border:1px solid #3a2c1a;color:var(--cream)}
.mc-ic{flex:0 0 52px;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;box-shadow:0 0 0 2px #c79f5a;color:#e2c27e}
.mc-ic svg{width:24px;height:24px}
.mc-custom .eyebrow{color:#c9a35b}
.mc-custom h3{margin-top:4px;font-family:var(--display);font-size:19px;color:#f6ecda}
.mc-custom .btn{margin-left:auto;flex:0 0 auto}
.mc-wrap{margin-top:34px}
.mc-head{display:flex;align-items:center;justify-content:space-between}
.mc-head .title-orn{justify-content:flex-start}
.mc-head .title-orn::before{display:none}
.mc-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 4 * 16px) / 5);gap:16px;margin-top:14px;padding-bottom:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.mc-track::-webkit-scrollbar{display:none}
.mc-card{scroll-snap-align:start}
.mc-card .ct{padding:12px 8px 14px}

@media (max-width:1060px){
  .cl-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cl-cultures{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mc-track{grid-auto-columns:calc((100% - 2 * 16px) / 3)}
}
@media (max-width:900px){
  .cl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cl-feature{grid-column:span 2;grid-row:auto}
  .cl-feature .cl-img{min-height:260px}
  .cat-intro{flex-wrap:wrap;row-gap:12px}
  .cat-intro p{flex-basis:100%;padding-left:0}
  .hero-cat .hero-title{font-size:40px}
  .pr-tools{flex-wrap:wrap}
  .pr-showing{flex-basis:100%}
}
@media (max-width:640px){
  .cl-sec-head h2{font-size:26px}
  .cl-cultures{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cl-peek{display:none}
  .mc-custom{flex-direction:column;align-items:flex-start}
  .mc-custom .btn{margin-left:0}
  .mc-track{grid-auto-columns:62%}
  .cat-stat{padding:0 16px}
  .cat-stat b{font-size:24px}
  .hero-cat .hero-title{font-size:32px}
  .pr-view{display:none}
}
@media (hover:none){
  .cl-peek,.pr-view{display:none}
}
@media (prefers-reduced-motion:reduce){
  .cl-card,.cl-img>img,.cl-peek,.pr-img .alt{transition:none}
}
/* arms: the feature (2×2) and six cards fill two rows of five exactly */
@media (min-width:1061px){
  .cl-grid.has-feature{grid-template-columns:repeat(5,minmax(0,1fr))}
  .cl-grid.has-feature .cl-card:not(.cl-feature) .cl-txt>span:not(.cl-no){font-size:13px}
}
.head-in .mainnav{margin-left:auto}

/* ---- phones: readable small print and finger-sized tap targets ---- */
@media (max-width:640px){
  .topbar{font-size:11px}
  .tb-social{gap:4px}
  .tb-social a{width:34px;height:34px;display:grid;place-items:center}
  .tb-social a svg{width:17px;height:17px}
  .logo .sub,.side-top .logo .sub{font-size:8.4px;letter-spacing:.04em}
  .eyebrow,.col-count,.cl-count,.feat-strip .lb,.pr-angles,.nw-cat,.nw-flag,.vd-tag,.co-badge,.ct-city span{font-size:11px}
  .ct-items .rm{width:34px;height:34px}
  .foot-social,.foot-follow .foot-social{gap:6px}
  .foot-social a,.foot-follow .foot-social a{width:38px;height:38px;display:grid;place-items:center}
  .foot-social a svg,.foot-follow .foot-social a svg{width:19px;height:19px}
  .feat-box{overflow:hidden}
}

/* mobile menu: the Collections list opens in place */
.mob-sub summary{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line-2);font-family:var(--display);font-size:13px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;list-style:none}
.mob-sub summary::-webkit-details-marker{display:none}
.mob-sub summary::after{content:"";width:8px;height:8px;margin-right:4px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .2s}
.mob-sub[open] summary::after{transform:rotate(-135deg) translateY(-1px)}
.mob-sub summary.active{color:var(--gold-dk)}
.mob-sub-in{display:grid;grid-template-columns:1fr 1fr;column-gap:14px;padding:4px 0 10px;border-bottom:1px solid var(--line-2)}
.mob-sub-in h6{grid-column:1/-1;margin:12px 0 4px;font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dk)}
.mobnav .mob-sub-in a{display:flex;align-items:center;gap:9px;min-height:40px;padding:6px 0;border-bottom:0;font-family:var(--serif);font-size:13px;letter-spacing:.02em;text-transform:uppercase}
.mobnav .mob-sub-in a.mob-all{grid-column:1/-1;min-height:0;padding:10px 0 2px;font-family:var(--display);font-size:12px;letter-spacing:.1em;color:var(--gold-dk)}
.mobnav.open{max-height:calc(100vh - 110px);overflow-y:auto;-webkit-overflow-scrolling:touch}
@media (max-width:360px){ .mob-sub-in{grid-template-columns:1fr} }
.cat-intro .cat-stat:last-child{border-right:0}

/* article: more patterns from the featured piece's collection */
.ar-suggest{flex:1 0 100%;padding-top:16px;border-top:1px solid #3a2c1a}
.ar-suggest>span{font-family:var(--serif);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#c9a35b}
.ar-suggest ul{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:12px}
.ar-suggest a{display:block;text-align:center}
.ar-suggest img{width:100%;aspect-ratio:576/699;object-fit:contain;background:#5d5a35;border:1px solid #4a3a22;transition:transform .6s,border-color .3s}
.ar-suggest a:hover img{transform:translateY(-3px);border-color:#c9a35b}
.ar-suggest b{display:block;margin-top:7px;font-family:var(--display);font-size:13px;font-weight:400;letter-spacing:.06em;color:#f3e7d0}
@media (max-width:640px){ .ar-suggest ul{grid-template-columns:repeat(3,minmax(0,1fr))} .ar-suggest li:nth-child(n+4){display:none} }

/* news cards carry no date or button now: let titles run to two lines */
.nw-card:not(.nw-lead) .nw-txt h2,.nw-card .nw-txt .nw-h{-webkit-line-clamp:2}

/* endless scrolling (news, product grids) */
.feed-sentinel{height:1px}
.feed-loading{display:flex;align-items:center;justify-content:center;gap:10px;margin:26px 0 6px;font-family:var(--display);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#8a6936}
.feed-loading span{width:16px;height:16px;border:2px solid rgba(157,118,56,.3);border-top-color:#9d7638;border-radius:50%;animation:us-spin .8s linear infinite}

/* news cards: the whole photo in a 3:2 frame, no cropping */
.nw-card,.nw-card:not(.nw-lead){height:auto}
.nw-media,.nw-card .nw-media{flex:none;height:auto;aspect-ratio:3/2;background:#f3ede2}
.nw-media img,.nw-card .nw-media img{object-fit:contain}
.nw-txt{padding:10px 17px 14px}

/* home banner on phones: the whole picture first, then the words on the dark band
   (as a faded backdrop the swords and the round mark were cut off); phones and tablets */
@media (max-width:1060px){
  .hero-home{display:flex;flex-direction:column;min-height:0}
  .hero-home .hero-art{position:relative;order:-1;width:100%;height:auto;aspect-ratio:3/2;opacity:1;
    background-size:cover;background-position:center;animation:none;transform:none}
  .hero-home .hero-art::before{background:none}
  .hero-home .hero-art::after{background:none;top:auto;height:2px;background-color:#b78b45}
  .hero-home .hero-copy{padding:22px 0 38px}
}

/* =================================================== JUSTIFIED COPY
   Body paragraphs on the content pages read justified; headings, buttons,
   labels and one-line sub-titles keep their own alignment. Centred blocks
   keep a centred last line. */
:is(.pg-home,.pg-heritage,.pg-custom-orders,.pg-export-trade,.pg-videos,.pg-terms) :is(.hero-copy p,.prose p,.prose li,.her-copy p,.co-lead,.in-copy p,.vd-txt p,.vd-channel p,.pillar p,.her-tl p,.co-steps p,.lg-intro p){text-align:justify;text-justify:inter-word}
:is(.pg-heritage,.pg-custom-orders) :is(.pillar p,.her-tl p,.co-steps p){text-align-last:center}
