:root { --nusa-accent:#c9a86a; --nusa-dark:#10131d; --nusa-light:#f4f0e8; }

/* v1.5.7 — compact page rows, square cards, and graceful entrance motion. */
body .nusa-header__inner { height:72px; }
body .nusa-footer { padding-block:52px; }
body .nusa-page-head,
body .nusa-archive-head,
body .nusa-single header { padding:72px clamp(20px,8vw,120px); }
body .nusa-page-head h1,
body .nusa-archive-head h1,
body .nusa-single header h1 { font-size:clamp(44px,6vw,78px); }
body .nusa-page-content:not(:has(.elementor)) { padding-block:62px; }
body .nusa-content__inner,
body .nusa-single__inner { padding-block:64px; }
body .nusa-archive-head { margin:-64px -22px 52px; }
body .nusa-single header { margin:-64px -22px 48px; }
body .nusa-post-grid { gap:22px; }
body .nusa-post-card {
	border-radius:10px;
	overflow:hidden;
	transition:border-color .3s ease,box-shadow .3s ease,transform .3s cubic-bezier(.2,.75,.25,1);
}
body .nusa-post-card:hover {
	border-color:rgba(201,168,106,.58);
	box-shadow:0 22px 48px rgba(16,19,29,.12);
	transform:translateY(-6px);
}
body .nusa-post-card img { transition:transform .7s cubic-bezier(.2,.75,.25,1); }
body .nusa-post-card:hover img { transform:scale(1.04); }
body .nusa-nav a { position:relative; }
body .nusa-nav a::after {
	background:var(--nusa-accent);
	bottom:-8px;
	content:"";
	height:1px;
	left:0;
	position:absolute;
	transform:scaleX(0);
	transform-origin:left;
	transition:transform .25s ease;
	width:100%;
}
body .nusa-nav a:hover::after,
body .nusa-nav a:focus-visible::after { transform:scaleX(1); }





@media(max-width:767px) {
	body .nusa-header__inner { height:60px; }
	body .nusa-nav { inset:60px 0 auto; }
	body .nusa-page-head,
	body .nusa-archive-head,
	body .nusa-single header { padding:54px 18px; }
	body .nusa-page-head h1,
	body .nusa-archive-head h1,
	body .nusa-single header h1 { font-size:clamp(39px,12vw,50px); }
	body .nusa-page-content:not(:has(.elementor)),
	body .nusa-content__inner,
	body .nusa-single__inner { padding-block:50px; }
	body .nusa-archive-head,
	body .nusa-single header { margin-top:-50px; }
}

@media(prefers-reduced-motion:reduce) {
	.nusa-reveal,
	.nusa-reveal--left,
	.nusa-reveal--right,
	body .nusa-post-card,
	body .nusa-post-card img {
		filter:none;
		opacity:1;
		transform:none;
		transition:none;
	}
}
body { background:var(--nusa-light); color:var(--nusa-dark); font-family:Arial,Helvetica,sans-serif; line-height:1.65; overflow-x:hidden; }
a { color:inherit; }
img { height:auto; max-width:100%; }
.nusa-header { background:rgba(23,23,21,.96); color:#fff; position:relative; z-index:100; }
.nusa-header__inner { align-items:center; display:flex; height:82px; justify-content:space-between; margin:auto; max-width:1440px; padding:0 clamp(20px,5vw,70px); }
.nusa-brand { align-items:flex-start; display:flex; flex-direction:column; line-height:1; text-decoration:none; }
.nusa-brand .custom-logo-link { display:block; line-height:0; }.nusa-brand .custom-logo { max-height:50px; width:auto; }
.nusa-brand > span { font-family:Georgia,serif; font-size:24px; letter-spacing:-.04em; }.nusa-brand > small { color:var(--nusa-accent); font-size:7px; letter-spacing:.2em; margin-top:7px; text-transform:uppercase; }
.nusa-nav ul { align-items:center; display:flex; gap:38px; list-style:none; margin:0; padding:0; }.nusa-nav a { color:rgba(255,255,255,.72); font-size:10px; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; }.nusa-nav a:hover { color:#fff; }
.nusa-nav-toggle { background:none; border:0; cursor:pointer; display:none; height:42px; width:42px; }.nusa-nav-toggle i { background:#fff; display:block; height:1px; margin:7px auto; width:24px; }
.nusa-footer { background:#0d0d0c; color:#fff; padding:65px clamp(20px,7vw,105px); }.nusa-footer strong { font-family:Georgia,serif; font-size:26px; font-weight:400; }.nusa-footer p,.nusa-footer small { color:rgba(255,255,255,.5); font-size:11px; }.nusa-footer small { border-top:1px solid rgba(255,255,255,.12); display:block; margin-top:28px; padding-top:22px; }
.nusa-page,.nusa-content,.nusa-single { min-height:60vh; }.nusa-page-content > .elementor { margin:0; }.nusa-elementor-page .nusa-page-content { margin:0; max-width:none; }.nusa-page-head,.nusa-archive-head,.nusa-single header { background:var(--nusa-dark); color:#fff; padding:100px clamp(20px,10vw,160px); }.nusa-page-head p,.nusa-archive-head p,.nusa-single header p { color:var(--nusa-accent); font-size:9px; letter-spacing:.2em; text-transform:uppercase; }.nusa-page-head h1,.nusa-archive-head h1,.nusa-single header h1 { font-family:Georgia,serif; font-size:clamp(54px,8vw,110px); font-weight:400; line-height:1; margin:0; }.nusa-page-content:not(:has(.elementor)) { margin:auto; max-width:900px; padding:80px 22px; }
.nusa-content__inner,.nusa-single__inner { margin:auto; max-width:1200px; padding:80px 22px; }.nusa-archive-head { margin:-80px -22px 70px; }.nusa-post-grid { display:grid; gap:30px; grid-template-columns:repeat(3,1fr); }.nusa-post-card { background:#fff; border:1px solid rgba(23,23,21,.12); }.nusa-post-card > a { display:block; line-height:0; }.nusa-post-card img { aspect-ratio:1.25; object-fit:cover; width:100%; }.nusa-post-card > div { padding:25px; }.nusa-post-card time { color:var(--nusa-accent); font-size:9px; letter-spacing:.1em; }.nusa-post-card h2 { font-family:Georgia,serif; font-size:27px; font-weight:400; line-height:1.1; }.nusa-post-card h2 a,.nusa-post-card > div > a { text-decoration:none; }.nusa-post-card p { color:#6f6d67; font-size:12px; }.nusa-post-card > div > a { font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.nusa-single__inner { max-width:950px; }.nusa-single header { margin:-80px -22px 55px; }.nusa-entry-content { font-family:Georgia,serif; font-size:18px; }.nusa-entry-content h2,.nusa-entry-content h3 { font-family:Georgia,serif; font-weight:400; }.nusa-entry-content a { color:#8a5d38; }.nusa-error { align-items:center; background:var(--nusa-dark); color:#fff; display:flex; min-height:calc(100vh - 82px); padding:80px 22px; text-align:center; }.nusa-error > div { margin:auto; max-width:750px; }.nusa-error > div > span { color:var(--nusa-accent); font-family:Georgia,serif; font-size:130px; line-height:1; }.nusa-error p { font-size:9px; letter-spacing:.2em; text-transform:uppercase; }.nusa-error h1 { font-family:Georgia,serif; font-size:50px; font-weight:400; line-height:1.05; }.nusa-error a { border-bottom:1px solid currentColor; font-size:10px; letter-spacing:.1em; padding-bottom:5px; text-decoration:none; text-transform:uppercase; }
body.nvi-standalone-page .nusa-header,body.nvi-standalone-page .nusa-footer { display:none; }.nusa-page--full { width:100%; }
@media(max-width:1050px){.nusa-nav-toggle{display:block}.nusa-nav{background:#11110f;inset:82px 0 auto;max-height:calc(100vh - 82px);opacity:0;overflow:auto;padding:28px clamp(22px,5vw,60px);pointer-events:none;position:absolute;transform:translateY(-10px);transition:.2s}.nusa-nav.is-open{opacity:1;pointer-events:auto;transform:none}.nusa-nav ul{align-items:flex-start;flex-direction:column;gap:18px}.nusa-nav a{font-size:13px}}
@media(max-width:767px){.nusa-header__inner{height:68px;padding:0 18px}.nusa-nav-toggle{display:block}.nusa-nav{background:#11110f;inset:68px 0 auto;opacity:0;padding:25px;pointer-events:none;position:absolute;transform:translateY(-10px);transition:.2s}.nusa-nav.is-open{opacity:1;pointer-events:auto;transform:none}.nusa-nav ul{align-items:flex-start;flex-direction:column;gap:18px}.nusa-nav a{font-size:13px}.nusa-post-grid{grid-template-columns:1fr}.nusa-page-head,.nusa-archive-head,.nusa-single header{padding:75px 20px}.nusa-page-head h1,.nusa-archive-head h1,.nusa-single header h1{font-size:56px}.nusa-error>div>span{font-size:90px}.nusa-error h1{font-size:38px}}

/* v1.5.8 — remove theme constraints around Elementor full-width canvases. */
body.nusa-elementor-page,
body.elementor-template-canvas { overflow-x:hidden; overflow-x:clip; }
body.nusa-elementor-page .nusa-page,
body.nusa-elementor-page .nusa-page-content,
body.nusa-elementor-page .nusa-page-content > .elementor,
.nusa-page--full,
.nusa-page--full > .elementor {
	margin:0;
	max-width:none;
	padding:0;
	width:100%;
}

/* v1.6.0 — polished theme chrome and matching interaction rhythm. */
body { font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:1rem; -webkit-font-smoothing:antialiased; }
.nusa-header { border-bottom:1px solid rgba(201,168,106,.18); }
.nusa-brand > small { font-size:.75rem; letter-spacing:.09em; }
.nusa-nav ul { gap:clamp(14px,1.6vw,24px); }
.nusa-nav a { font-size:.875rem; letter-spacing:.035em; line-height:1.5; transition:color 220ms ease; }
.nusa-nav a::after { transition:transform 380ms var(--arsyi-ease); }
.nusa-footer p,.nusa-footer small { color:rgba(255,255,255,.72); font-size:.875rem; }
.nusa-post-card p { font-size:1rem; line-height:1.75; }
.nusa-post-card time { font-size:.75rem; }
.nusa-post-card > div > a { font-size:.875rem; }
.nusa-post-card h2 { line-height:1.2; text-wrap:balance; }
.nusa-post-card > div { padding:28px; }
body .nusa-post-card { border-radius:14px; box-shadow:0 4px 18px rgba(16,19,29,.04); transition:transform 500ms var(--arsyi-ease),box-shadow 400ms ease,border-color 220ms ease; }
body .nusa-post-card img { transition:transform 850ms var(--arsyi-ease); }
.nusa-page-head p,.nusa-archive-head p,.nusa-single header p,.nusa-error p { font-size:.75rem; letter-spacing:.14em; }
.nusa-error a { font-size:.875rem; }
.nusa-page-head h1,.nusa-archive-head h1,.nusa-single header h1 { line-height:1.12; text-wrap:balance; overflow-wrap:break-word; }
.nusa-nav-toggle i { transition:transform 360ms var(--arsyi-ease); }
.nusa-nav-toggle[aria-expanded="true"] i:first-child { transform:translateY(4px) rotate(45deg); }
.nusa-nav-toggle[aria-expanded="true"] i:last-child { transform:translateY(-4px) rotate(-45deg); }
@media(max-width:1280px) {
  .nusa-nav-toggle { display:block; }
  body .nusa-nav { background:#10131d; inset:100% 0 auto; max-height:calc(100svh - 72px); overflow:auto; padding:24px; position:absolute; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-12px); transition:opacity 300ms ease,transform 420ms var(--arsyi-ease),visibility 300ms; }
  body .nusa-nav.is-open { opacity:1; visibility:visible; pointer-events:auto; transform:none; }
  .nusa-nav ul { align-items:flex-start; flex-direction:column; gap:10px; }
  .nusa-nav a { align-items:center; display:inline-flex; min-height:44px; }
}
@media(hover:none),(prefers-reduced-motion:reduce) {
  body .nusa-post-card:hover,body .nusa-post-card:hover img { transform:none; }
}

/* v1.6.4 — stable navigation and fluid native WordPress pages. */
.nusa-header *, .nusa-page *, .nusa-content *, .nusa-single *, .nusa-footer * { box-sizing:border-box; }
.nusa-header__inner > *, .nusa-post-grid > * { min-width:0; }
body .nusa-header__inner { height:auto; min-height:72px; gap:20px; }
.nusa-nav ul { flex-wrap:wrap; gap:12px 20px; }
.nusa-brand { max-width:100%; }
.nusa-brand .custom-logo { max-width:100%; object-fit:contain; }
.nusa-page :is(img,video,iframe), .nusa-entry-content :is(img,video,iframe) { max-width:100%; }
.nusa-page :is(h1,h2,h3,p,a), .nusa-entry-content :is(h1,h2,h3,p,a) { overflow-wrap:break-word; }
.nusa-page :is(input,select,textarea) { min-width:0; max-width:100%; }
.nusa-entry-content :is(pre,.wp-block-table) { max-width:100%; overflow-x:auto; }
@media(max-width:1280px) {
  .nusa-nav-toggle { display:block; flex:0 0 44px; min-height:44px; }
  body .nusa-nav { position:absolute; inset:100% 0 auto; padding:20px clamp(20px,4vw,48px); max-height:calc(100vh - 86px); max-height:calc(100dvh - 86px); overflow:auto; background:#11110f; visibility:hidden; opacity:0; pointer-events:none; transform:translateY(-8px); }
  body .nusa-nav.is-open { visibility:visible; opacity:1; pointer-events:auto; transform:none; }
  .nusa-nav ul { flex-direction:column; align-items:stretch; gap:6px; }
  .nusa-nav a { display:flex; align-items:center; min-height:44px; }
}
@media(min-width:768px) and (max-width:1024px) { .nusa-post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
  body .nusa-header__inner { min-height:68px; }
  .nusa-post-grid { grid-template-columns:minmax(0,1fr); }
  .nusa-page :is(input,select,textarea) { font-size:16px; }
}
