/* PUBLIC PAGES — Home, About, Press, Contact */

/* Nav */
.pub-nav { position:fixed; top:0; left:0; right:0; z-index:200; background:rgba(8,16,30,0.96); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-bottom:1px solid rgba(201,168,76,0.12); }
.pub-nav-inner { display:flex; align-items:center; justify-content:space-between; height:68px; }
.pub-nav-logo { display:flex; align-items:center; text-decoration:none; }
.pub-nav-links { display:flex; align-items:center; gap:2px; }
.pub-nav-link { color:rgba(232,237,243,0.65); text-decoration:none; font-size:0.85rem; font-weight:500; padding:7px 12px; border-radius:8px; transition:color 0.15s,background 0.15s; white-space:nowrap; }
.pub-nav-link:hover, .pub-nav-link.active { color:var(--fg); background:rgba(255,255,255,0.06); }
.pub-nav-sep { width:1px; height:20px; background:rgba(255,255,255,0.1); margin:0 6px; }
.pub-nav-signin { background:rgba(201,168,76,0.1); border:1px solid rgba(201,168,76,0.25); color:var(--accent); font-weight:600; font-size:0.85rem; padding:7px 16px; border-radius:8px; text-decoration:none; margin-left:6px; transition:all 0.15s; }
.pub-nav-signin:hover { background:rgba(201,168,76,0.2); border-color:var(--accent); }
.pub-nav-hamburger { display:none; background:none; border:none; color:var(--fg); font-size:1.4rem; cursor:pointer; padding:4px 8px; }
.pub-nav-drawer { display:none; flex-direction:column; background:rgba(8,16,30,0.98); border-top:1px solid rgba(201,168,76,0.1); padding:12px 20px 20px; gap:4px; }
.pub-nav-drawer.open { display:flex; }
.pub-nav-drawer a { color:var(--fg-dim); text-decoration:none; font-size:1rem; font-weight:500; padding:10px 12px; border-radius:8px; transition:all 0.15s; }
.pub-nav-drawer a:hover { color:var(--fg); background:rgba(255,255,255,0.06); }
.pub-nav-drawer .drawer-signin { background:rgba(201,168,76,0.1); border:1px solid rgba(201,168,76,0.25); color:var(--accent); font-weight:600; text-align:center; margin-top:8px; }

/* Hero Banner */
.pub-hero { position:relative; padding:140px 0 80px; overflow:hidden; display:flex; align-items:center; }
.pub-hero-bg { position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; }
.pub-hero-overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,22,40,0.82) 0%,rgba(10,22,40,0.92) 100%); z-index:1; }
.pub-hero .wrap { position:relative; z-index:2; }
.pub-hero h1 { font-family:'Space Grotesk',sans-serif; font-size:clamp(2.2rem,5vw,3.6rem); font-weight:800; line-height:1.1; letter-spacing:-0.02em; color:var(--fg); margin-bottom:16px; }
.pub-hero .pub-hero-sub { font-size:clamp(1rem,2vw,1.2rem); color:var(--fg-dim); max-width:640px; line-height:1.65; }
.pub-hero-home { min-height:92vh; text-align:center; justify-content:center; padding-top:120px; padding-bottom:100px; }
.pub-hero-home h1 { max-width:860px; margin-left:auto; margin-right:auto; }
.pub-hero-home .pub-hero-sub { max-width:720px; margin-left:auto; margin-right:auto; margin-bottom:36px; }
.pub-hero-narrow { min-height:0; padding:130px 0 60px; }

/* CTA Buttons */
.pub-cta-row { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-bottom:16px; }
.pub-btn { display:inline-flex; align-items:center; gap:8px; padding:14px 28px; border-radius:8px; font-family:'Space Grotesk',sans-serif; font-size:0.95rem; font-weight:700; text-decoration:none; transition:all 0.2s; cursor:pointer; border:none; }
.pub-btn-primary { background:var(--accent); color:#0a1628; }
.pub-btn-primary:hover { background:#d4b757; transform:translateY(-2px); }
.pub-btn-secondary { background:rgba(255,255,255,0.07); color:var(--fg); border:1px solid rgba(255,255,255,0.12); }
.pub-btn-secondary:hover { background:rgba(255,255,255,0.12); transform:translateY(-2px); }

/* Sections */
.pub-section { padding:80px 0; }
.pub-section-alt { background:var(--bg-mid); }
.pub-section-label { font-size:0.78rem; font-weight:800; text-transform:uppercase; letter-spacing:0.1em; color:var(--accent); margin-bottom:12px; }
.pub-section h2 { font-family:'Space Grotesk',sans-serif; font-size:clamp(1.6rem,3.5vw,2.4rem); font-weight:700; line-height:1.15; margin-bottom:20px; max-width:640px; }
.pub-section p.pub-body { color:var(--fg-dim); font-size:0.95rem; line-height:1.75; max-width:720px; margin-bottom:20px; }

/* Feature Grid */
.pub-features { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:40px; }
.pub-feature-card { background:var(--bg-card); border:1px solid rgba(255,255,255,0.06); border-radius:var(--radius); padding:28px 24px; }
.pub-feature-card h3 { font-family:'Space Grotesk',sans-serif; font-size:1.05rem; font-weight:600; margin-bottom:10px; color:var(--accent); }
.pub-feature-card p { font-size:0.9rem; color:var(--fg-dim); line-height:1.6; }

/* Audience Cards */
.pub-audience-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-top:40px; }
.pub-audience-card { background:var(--bg-card); border:1px solid rgba(255,255,255,0.06); border-radius:var(--radius); padding:28px 24px; display:flex; flex-direction:column; }
.pub-audience-icon { font-size:2rem; margin-bottom:14px; line-height:1; }
.pub-audience-card h3 { font-family:'Space Grotesk',sans-serif; font-size:1.1rem; font-weight:700; color:var(--fg); margin-bottom:10px; }
.pub-audience-card p { font-size:0.88rem; color:var(--fg-dim); line-height:1.65; flex:1; margin-bottom:16px; }
.pub-audience-card .pub-btn { align-self:flex-start; padding:10px 20px; font-size:0.82rem; }

/* Differentiator Cards */
.pub-diff-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:40px; }
.pub-diff-card { border-left:3px solid var(--accent); padding:24px; background:var(--bg-card); border-radius:0 var(--radius) var(--radius) 0; }
.pub-diff-card h3 { font-family:'Space Grotesk',sans-serif; font-size:1rem; font-weight:600; color:var(--accent); margin-bottom:8px; }
.pub-diff-card p { font-size:0.88rem; color:var(--fg-dim); line-height:1.6; }

/* Footer CTA */
.pub-footer-cta { position:relative; padding:100px 0; text-align:center; overflow:hidden; }
.pub-footer-cta .pub-hero-bg, .pub-footer-cta .pub-hero-overlay { position:absolute; inset:0; }
.pub-footer-cta .pub-hero-overlay { background:linear-gradient(180deg,rgba(10,22,40,0.88) 0%,rgba(10,22,40,0.95) 100%); }
.pub-footer-cta .wrap { position:relative; z-index:2; }
.pub-footer-cta h2 { font-family:'Space Grotesk',sans-serif; font-size:clamp(1.8rem,4vw,2.8rem); font-weight:700; margin-bottom:16px; color:var(--fg); }
.pub-footer-cta p { color:var(--fg-dim); font-size:1rem; max-width:600px; margin:0 auto 32px; line-height:1.65; }

/* Footer */
.pub-footer { padding:48px 0 32px; border-top:1px solid rgba(201,168,76,0.15); background:var(--bg-mid); }
.pub-footer-main { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:32px; margin-bottom:32px; }
.pub-footer-brand { display:flex; flex-direction:column; }
.pub-footer-tagline { font-size:0.85rem; color:var(--fg-dim); }
.pub-footer-col { display:flex; flex-direction:column; gap:8px; }
.pub-footer-col-title { font-family:'Space Grotesk',sans-serif; font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:0.1em; color:var(--fg); margin-bottom:4px; }
.pub-footer-col a { font-size:0.85rem; color:var(--fg-dim); text-decoration:none; transition:color 0.15s; }
.pub-footer-col a:hover { color:var(--accent); }
.pub-footer-bottom { padding-top:20px; border-top:1px solid rgba(255,255,255,0.06); text-align:center; font-size:0.78rem; color:var(--fg-dim); }

/* About Page */
.pub-text-section { max-width:760px; }
.pub-text-section h2 { max-width:none; }
.pub-regions-list { list-style:none; padding:0; margin:16px 0 20px; }
.pub-regions-list li { color:var(--fg-dim); font-size:0.95rem; padding:6px 0 6px 20px; position:relative; line-height:1.6; }
.pub-regions-list li::before { content:'◈'; position:absolute; left:0; color:var(--accent); font-size:0.8rem; }

/* Press Page */
.pub-press-card { background:var(--bg-card); border:1px solid rgba(255,255,255,0.06); border-radius:var(--radius); padding:32px; margin-bottom:24px; }
.pub-press-card h3 { font-family:'Space Grotesk',sans-serif; font-size:1.2rem; font-weight:700; color:var(--fg); margin-bottom:4px; }
.pub-press-date { font-size:0.82rem; color:var(--accent); font-weight:600; margin-bottom:16px; display:block; }
.pub-press-card p, .pub-press-card li { font-size:0.92rem; color:var(--fg-dim); line-height:1.7; margin-bottom:12px; }
.pub-press-card ul { padding-left:20px; margin-bottom:16px; }
.pub-press-placeholder { background:var(--bg-card); border:1px dashed rgba(201,168,76,0.2); border-radius:var(--radius); padding:24px; margin-bottom:16px; text-align:center; }
.pub-press-placeholder h4 { font-family:'Space Grotesk',sans-serif; font-size:0.95rem; font-weight:600; color:var(--fg-dim); margin-bottom:4px; }
.pub-press-placeholder p { font-size:0.82rem; color:var(--fg-dim); opacity:0.7; }

/* Contact Page */
.pub-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:40px; }
.pub-contact-form { background:var(--bg-card); border:1px solid rgba(255,255,255,0.06); border-radius:var(--radius); padding:32px; }
.pub-contact-form .form-group { margin-bottom:18px; }
.pub-contact-form label { display:block; font-size:0.82rem; font-weight:600; color:var(--fg-dim); text-transform:uppercase; letter-spacing:0.04em; margin-bottom:6px; }
.pub-contact-form input, .pub-contact-form select, .pub-contact-form textarea { width:100%; background:var(--bg-mid); border:1px solid rgba(255,255,255,0.1); border-radius:8px; color:var(--fg); font-family:inherit; font-size:0.95rem; padding:10px 14px; outline:none; transition:border-color 0.15s; }
.pub-contact-form input:focus, .pub-contact-form select:focus, .pub-contact-form textarea:focus { border-color:var(--accent); box-shadow:0 0 0 3px rgba(201,168,76,0.12); }
.pub-contact-form textarea { resize:vertical; min-height:120px; }
.pub-contact-form select { appearance:none; cursor:pointer; }
.pub-contact-categories { display:flex; flex-direction:column; gap:20px; }
.pub-contact-cat { border-left:3px solid var(--accent); padding:16px 20px; background:var(--bg-card); border-radius:0 var(--radius) var(--radius) 0; }
.pub-contact-cat h4 { font-family:'Space Grotesk',sans-serif; font-size:0.95rem; font-weight:600; color:var(--fg); margin-bottom:4px; }
.pub-contact-cat a { color:var(--accent); text-decoration:none; font-size:0.88rem; font-weight:500; }
.pub-contact-cat a:hover { text-decoration:underline; }
.pub-contact-cat p { font-size:0.82rem; color:var(--fg-dim); margin-top:4px; line-height:1.5; }
.pub-alert-success { background:rgba(74,210,149,0.1); border:1px solid rgba(74,210,149,0.3); border-radius:8px; padding:16px 20px; color:var(--success); font-size:0.92rem; margin-bottom:24px; }

/* Responsive */
@media (max-width:900px) {
  .pub-features, .pub-diff-grid { grid-template-columns:1fr; }
  .pub-audience-grid { grid-template-columns:1fr; }
  .pub-footer-main { grid-template-columns:1fr 1fr; gap:24px; }
  .pub-contact-grid { grid-template-columns:1fr; }
}
@media (max-width:768px) {
  .pub-nav-links { display:none; }
  .pub-nav-hamburger { display:block; }
  .pub-hero { padding:110px 0 60px; }
  .pub-hero-home { min-height:auto; padding:100px 0 70px; }
  .pub-section { padding:60px 0; }
  .pub-footer-main { grid-template-columns:1fr; gap:20px; }
  .pub-cta-row { flex-direction:column; align-items:center; }
  .pub-btn { width:100%; max-width:320px; justify-content:center; }
}
