.header { display:flex; align-items:center; flex-wrap:wrap; gap:var(--space-2); padding-block:var(--space-3); border-bottom:1px solid var(--line); }
.brand { text-decoration:none; font-size:var(--h3); font-weight:var(--bold); letter-spacing:var(--tracking); margin-right:auto; display:flex; align-items:center; gap:var(--space-1); }
.brand-mark { width:1.5rem; height:1.5rem; border:5px solid var(--accent); border-radius:var(--small-radius); transform:rotate(-12deg); }
.nav { display:flex; gap:var(--space-2); flex-wrap:wrap; width:100%; order:3; font-size:var(--small); }
.nav a { padding-block:var(--space-1); text-decoration:none; }
.nav a:hover,.nav a[aria-current=page] { text-decoration:underline; }
.languages { display:flex; gap:.25rem; }
.languages button { min-width:44px; min-height:44px; border:1px solid var(--line); border-radius:var(--small-radius); background:var(--surface); color:var(--text); cursor:pointer; font-size:var(--small); }
.languages button[aria-pressed=true] { background:var(--accent-soft); border-color:var(--accent); }
.hero { padding-block:var(--space-6); max-width:58rem; }
.eyebrow { color:var(--accent); font-size:var(--small); font-weight:var(--bold); margin-bottom:var(--space-3); }
.hero h1 span { color:var(--accent); }
.intro { color:var(--muted); max-width:39rem; margin-top:var(--space-3); font-size:var(--h3); line-height:1.5; }
.section-heading { display:flex; align-items:baseline; justify-content:space-between; gap:var(--space-2); flex-wrap:wrap; margin-bottom:var(--space-3); }
.section-heading p { color:var(--muted); }
.cards { display:grid; gap:var(--space-2); }
.card { display:flex; flex-direction:column; text-decoration:none; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:var(--space-3); min-height:19rem; }
.card:hover { border-color:var(--accent); }
.card-top { display:flex; align-items:center; justify-content:flex-end; color:var(--accent); margin-bottom:var(--space-1); }
.card-logo-area { height:232px; display:flex; align-items:center; justify-content:center; margin-bottom:var(--space-3); }
.card-logo { display:block; width:100%; max-width:290px; height:auto; }
.card p { color:var(--muted); margin-top:var(--space-2); margin-bottom:var(--space-3); }
.card-link { color:var(--accent); font-weight:var(--medium); margin-top:auto; }
.footer { margin-top:var(--space-6); border-top:1px solid var(--line); padding-block:var(--space-4); display:flex; flex-wrap:wrap; justify-content:space-between; gap:var(--space-3); font-size:var(--small); color:var(--muted); }
.footer nav { display:flex; flex-wrap:wrap; gap:var(--space-3); }
.placeholder { min-height:55vh; }
.status { display:inline-block; background:var(--accent-soft); color:var(--accent); border-radius:var(--small-radius); padding:var(--space-1) var(--space-2); margin-top:var(--space-4); font-size:var(--small); font-weight:var(--medium); }
.project { border:1px solid var(--line); border-radius:var(--radius); padding:var(--space-3); max-width:42rem; margin-top:var(--space-4); }
.project p { margin-top:var(--space-2); color:var(--muted); }
.back { display:inline-block; margin-top:var(--space-4); }
@media(min-width:48rem) { .nav { width:auto; order:initial; } .cards { grid-template-columns:repeat(3,minmax(0,1fr)); } .card { padding:var(--space-3); } }

/* Phase 2 components; colors and type stay in tokens.css. */
.compact { padding-block:var(--space-5); }
.two-column { grid-template-columns:1fr; }
.entry-card { min-height:14rem; }
.section-block { margin-top:var(--space-5); }
.section-copy { color:var(--muted); margin-block:var(--space-3); max-width:48rem; }
.link-grid { list-style:none; padding:0; display:grid; gap:var(--space-2); margin-top:var(--space-3); }
.link-grid a { display:block; padding:var(--space-2); border:1px solid var(--line); border-radius:var(--small-radius); background:var(--surface); }
.reference-frame { width:100%; border:1px solid var(--line); border-radius:var(--small-radius); display:block; margin-top:var(--space-3); min-height:50rem; }
@media(min-width:48rem) { .two-column,.link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }

.brand-icon { flex: none; color: var(--accent); }

/* Startpage viewport photo and inline shield; shared pages retain their styling. */
body:has(.home-hero) { isolation:isolate; }
body:has(.home-hero)::before { content:""; position:fixed; inset:0; z-index:-1; pointer-events:none; background-image:linear-gradient(to bottom, var(--bg) 0%, var(--bg) 12%, transparent 85%), linear-gradient(to right, var(--bg) 0%, var(--bg) 35%, transparent 100%), url("/paket5/site/sigvora-assets/legacy/ui-assets/sigvora-entry-dawn.webp"); background-size:cover; background-position:right center; background-repeat:no-repeat; opacity:.47; }
.brand-shield path { stroke:var(--accent); }
.brand-shield text { fill:var(--text); }
@media(max-width:47.99rem) { body:has(.home-hero)::before { opacity:.29; background-position:right center; } }



/* Startpage geometry: shared content grid and an 8px spacing rhythm. */
.home-page { --space-section:56px; display:flex; flex-direction:column; min-height:100vh; }
.home-page .wrap { width:min(var(--max), calc(100% - 128px)); margin-left:max(24px, calc((100% - var(--max) - 80px) / 2)); margin-right:104px; }
.home-page .header { padding-block:16px; flex:none; }
.home-page main { flex:1; display:flex; flex-direction:column; justify-content:center; padding-block:var(--space-section); }
.home-hero { padding:0; max-width:58rem; margin-bottom:var(--space-section); }
.home-hero .eyebrow { margin-bottom:16px; }
.home-hero h1#hero-title { font-size:clamp(2.25rem, 4vw, 3.75rem); line-height:1.05; }
.home-hero p.intro { font-size:1.05rem; max-width:46rem; margin-top:16px; }
.home-page h2#areas-title { font-size:clamp(1.5rem, 2.4vw, 2rem); }
.home-page .section-heading { align-items:baseline; gap:16px; margin-bottom:24px; }
.home-page .cards { display:grid; width:100%; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:end; }
.home-page .home-glass-card { background:transparent; border:0; box-shadow:none; backdrop-filter:none; padding:0; min-height:0; height:150px; border-radius:var(--small-radius); transition:transform .15s ease; }
.home-page .home-glass-card:hover,.home-page .home-glass-card:focus-visible { transform:translateY(-2px); }
.home-page .home-glass-card:focus-visible { outline:3px solid var(--focus); outline-offset:5px; }
.home-page .card-logo-area { height:150px; margin:0; display:flex; align-items:flex-end; justify-content:center; }
.home-page .home-glass-card:first-child .card-logo-area { justify-content:flex-start; }
.home-page .home-glass-card:last-child .card-logo-area { justify-content:flex-end; }
.home-page .card-logo { flex:none; height:150px; width:auto; max-width:100%; object-fit:contain; object-position:center bottom; }
.home-page .footer { flex:none; margin-top:0; padding-block:24px; gap:24px; }
.home-dock { position:fixed; z-index:20; right:16px; top:50%; transform:translateY(-50%); display:flex; flex-direction:column; gap:8px; width:60px; max-height:calc(100svh - 32px); }
.home-side-nav { display:flex; flex-direction:column; align-items:flex-end; gap:8px; min-height:0; }
.home-side-tab { display:flex; align-items:center; justify-content:center; width:100%; height:152px; min-height:0; padding:8px; border:1px solid var(--accent); border-radius:var(--small-radius); background:transparent; color:var(--text); text-decoration:none; box-shadow:none; backdrop-filter:none; }
.home-side-tab span { writing-mode:vertical-rl; transform:rotate(180deg); white-space:nowrap; font-size:var(--small); font-weight:var(--bold); }
.home-side-tab:hover { text-decoration:underline; }
.home-dock :focus-visible { outline:3px solid var(--focus); outline-offset:-4px; }
.home-languages { flex-direction:column; align-items:flex-end; gap:8px; }
.home-languages button { display:grid; place-items:center; width:100%; min-width:0; height:40px; min-height:40px; padding:8px; border:1px solid var(--accent); background:transparent; color:var(--text); box-shadow:none; backdrop-filter:none; }
.home-languages button[aria-pressed=true] { border:2px solid var(--accent); background:transparent; box-shadow:none; }
.home-languages svg { display:block; border-radius:3px; border:1px solid var(--line); }
@media(max-width:47.99rem) {
 .home-page .wrap { width:calc(100% - 96px); margin-left:16px; margin-right:80px; }
 .home-page .cards { grid-template-columns:1fr; }
 .home-page .home-glass-card .card-logo-area { justify-content:center; }
 .home-dock { width:48px; }
 .home-side-tab { height:128px; }
 .home-side-tab span { font-size:.7rem; }
}
@media(max-height:650px) { .home-side-tab { height:96px; } .home-side-tab span { font-size:.65rem; } .home-languages button { height:32px; min-height:32px; padding:0; } }
/* Temporary white silhouettes keep the navy PNG logos visible in dark mode. */

@media(prefers-reduced-motion:reduce) { .home-page .home-glass-card { transition:none; } }

/* Preview UI: consistent light appearance for every public page. */
:root,html{color-scheme:light !important;}
body{background:var(--bg) !important;color:var(--text) !important;}
:is(.site-header,.hero:not(.home-hero),.roles-section,.trust-section,.closing-section,.language-menu>div,.network-core,.trust-strip,.modules,.purpose-grid .accent-card,.role-detail,footer){background:var(--surface) !important;color:var(--text) !important;border-color:var(--line) !important;}
:is(.site-header,.hero:not(.home-hero),.roles-section,.trust-section,.closing-section,.language-menu,.network-core,.trust-strip,.modules,.purpose-grid .accent-card,.role-detail,footer) :is(h1,h2,h3,h4,p,strong,small,b,a,li,span){color:var(--text) !important;}
:is(.site-header,.roles-section,.trust-section,.closing-section) .eyebrow{color:var(--accent) !important;}
.button.secondary{border-color:var(--line) !important;color:var(--text) !important;}
.contact-float,.contact-close,.contact-link{background:var(--surface) !important;color:var(--text) !important;}
.contact-dialog,body:after{background:var(--surface) !important;color:var(--text) !important;}
