/*
Theme Name: Paxline Holdings
Theme URI: https://paxline.org/
Author: Paxline Holdings LLC
Description: A private holdings theme for Paxline Holdings LLC.
Version: 1.3.0
Text Domain: paxline-holdings
*/

:root { --ink:#0b1d3a; --blue:#2058bd; --gold:#c79540; --teal:#14736c; --paper:#f8f4eb; --sand:#ece1cc; --line:#d5c9b8; --muted:#657083; --white:#fffdf9; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; }
.skip-link { position:absolute; left:-9999px; z-index:100; }
.skip-link:focus { left:1rem; top:1rem; padding:.75rem 1rem; background:var(--blue); color:#fff; }
.wrap { width:min(100% - 3rem, 1248px); margin-inline:auto; }
.site-header { position:sticky; top:0; z-index:20; background:rgba(255,253,249,.95); border-bottom:1px solid var(--line); backdrop-filter:blur(10px); }
.header-inner { min-height:76px; display:flex; align-items:center; gap:2rem; }
.brand { display:inline-flex; align-items:center; gap:.75rem; text-decoration:none; }
.brand-mark,.company-mark { display:grid; place-items:center; font-weight:800; }
.brand-mark { width:2rem; height:2rem; border-radius:50%; background:var(--ink); color:var(--gold); font-size:.8rem; }
.brand-name { display:block; color:var(--ink); font-weight:800; font-size:.95rem; letter-spacing:-.025em; }
.brand-note,.eyebrow { display:block; margin-top:.16rem; color:var(--muted); font-size:.65rem; font-weight:700; letter-spacing:.17em; line-height:1.4; text-transform:uppercase; }
.site-nav { display:flex; align-items:center; gap:1.7rem; margin-left:auto; }
.site-nav a { color:var(--ink); font-size:.88rem; font-weight:700; text-decoration:none; }
.site-nav a:hover,.site-nav a:focus { color:var(--blue); }
.nav-button,.button { display:inline-flex; min-height:48px; align-items:center; justify-content:center; gap:.55rem; padding:.75rem 1rem; border:1px solid var(--blue); background:var(--blue); color:#fff!important; font-weight:800; font-size:.84rem; letter-spacing:.01em; text-decoration:none; transition:transform .15s ease,background-color .15s ease; }
.nav-button:hover,.button:hover { transform:translateY(-1px); background:#164798; }
.menu-toggle { display:none; margin-left:auto; border:1px solid var(--line); background:transparent; color:var(--ink); padding:.6rem .75rem; }
.hero { position:relative; overflow:hidden; background:radial-gradient(circle at 88% 12%,rgba(38,102,210,.8),transparent 25%),linear-gradient(135deg,#08162d 0%,#0b1d3a 50%,#112c5a 100%); color:#fff; }
.hero:before { content:""; position:absolute; inset:0; opacity:.26; background:linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px); background-size:46px 46px; }
.hero-inner { position:relative; min-height:min(760px,88vh); display:grid; grid-template-columns:1.08fr .92fr; align-items:center; gap:4.5rem; padding-block:7rem; }
h1,h2,h3,p { margin-top:0; }
h1 { max-width:900px; margin-bottom:1.8rem; font-size:clamp(3.1rem,6.4vw,5.8rem); line-height:.93; letter-spacing:-.075em; }
h2 { font-size:clamp(2rem,3.4vw,3.5rem); line-height:1.04; letter-spacing:-.06em; }
h3 { font-size:1.12rem; margin-bottom:.72rem; }
.lead { max-width:700px; color:var(--muted); font-size:1.13rem; line-height:1.65; }
.hero .lead { color:rgba(255,255,255,.77); }
.hero .eyebrow { color:var(--gold); }
.actions { display:flex; flex-wrap:wrap; gap:1rem; margin-top:2.5rem; }
.button--quiet { border-color:rgba(255,255,255,.62); background:transparent; color:#fff!important; }
.button--quiet:hover { background:rgba(255,255,255,.1); }
.hero-panel { position:relative; overflow:hidden; min-height:390px; padding:2.3rem; border:1px solid rgba(255,255,255,.24); background:linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.035)); }
.hero-panel:before { content:""; position:absolute; width:255px; height:255px; right:-55px; bottom:-70px; border:28px solid var(--gold); border-radius:50%; opacity:.85; }
.hero-panel > * { position:relative; }
.hero-panel-title { max-width:330px; margin-top:4.5rem; font-size:clamp(2rem,3.2vw,3rem); font-weight:800; line-height:1.03; letter-spacing:-.055em; }
.hero-panel-copy { max-width:350px; color:rgba(255,255,255,.74); line-height:1.6; }
.section { padding-block:7rem; }
.section--sand { background:var(--sand); }
.section-grid { display:grid; grid-template-columns:.85fr 1.15fr; align-items:end; gap:4rem; }
.section-grid .lead { margin-bottom:0; }
.eyebrow--blue { color:var(--blue); }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; margin-top:3.5rem; }
.card { padding:2rem; border-top:4px solid var(--gold); background:var(--white); box-shadow:0 10px 30px rgba(11,29,58,.07); }
.card-number { color:var(--blue); font-size:.72rem; font-weight:800; letter-spacing:.14em; }
.card p,.company-copy,.muted { color:var(--muted); line-height:1.62; }
.company-band { position:relative; overflow:hidden; padding-block:5.8rem; background:var(--blue); color:#fff; }
.company-band:after { content:""; position:absolute; right:-12vw; top:-18vw; width:48vw; height:48vw; border:38px solid rgba(199,149,64,.55); border-radius:50%; }
.company-band .section-grid { position:relative; z-index:1; align-items:center; }
.company-band .eyebrow { color:#f0c979; }
.company-band .lead { color:rgba(255,255,255,.78); }
.link-line { display:inline-flex; gap:.4rem; align-items:center; padding-bottom:.45rem; border-bottom:2px solid var(--gold); color:#fff; font-weight:800; text-decoration:none; }
.portfolio-label { display:flex; justify-content:space-between; align-items:end; gap:1rem; margin-bottom:1.5rem; }
.portfolio-label p { margin:0; color:var(--muted); font-size:.9rem; }
.portfolio-list { display:grid; gap:1rem; }
.company-row { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:2rem; padding:2.7rem; border:1px solid var(--line); background:var(--white); box-shadow:0 12px 32px rgba(11,29,58,.06); }
.company-mark { width:3.45rem; height:3.45rem; border-radius:.35rem; background:var(--ink); color:var(--gold); letter-spacing:-.05em; }
.company-row h3 { margin-top:.65rem; font-size:1.8rem; letter-spacing:-.04em; }
.company-row .button { white-space:nowrap; }
.about-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:4rem; }
.about-statement { max-width:870px; color:var(--ink); font-size:clamp(1.6rem,2.8vw,2.55rem); font-weight:700; line-height:1.25; letter-spacing:-.05em; }
.contact-layout { display:grid; grid-template-columns:.72fr 1.28fr; gap:4rem; }
.contact-note { align-self:start; padding-left:1.5rem; border-left:4px solid var(--gold); }
.contact-note p { color:var(--muted); line-height:1.6; }
.contact-form { padding:2.5rem; background:var(--white); border:1px solid var(--line); box-shadow:0 12px 32px rgba(11,29,58,.06); }
.form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.2rem; }
.form-field { display:flex; flex-direction:column; gap:.55rem; color:var(--muted); font-size:.68rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.form-field--wide { grid-column:1/-1; margin-top:.35rem; }
input,select,textarea { width:100%; border:1px solid #b7bfc9; border-radius:0; background:#fcfaf5; padding:.85rem; color:var(--ink); font:inherit; font-size:.92rem; letter-spacing:normal; text-transform:none; }
textarea { min-height:160px; resize:vertical; }
.form-message { margin:1.2rem 0 0; padding:1rem; background:#edf5ef; color:#23462f; line-height:1.5; }
.form-error { background:#fbeeee; color:#8c2525; }
.site-footer { background:var(--ink); color:#fff; padding-top:4rem; }
.footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:3rem; padding-bottom:3.5rem; }
.footer-grid p { color:rgba(255,255,255,.68); line-height:1.6; }
.footer-grid .eyebrow { color:var(--gold); }
.footer-nav { display:grid; gap:.75rem; margin-top:1rem; }
.footer-nav a { color:#fff; font-size:.92rem; text-decoration:none; }
.footer-bottom { display:flex; justify-content:space-between; gap:1rem; padding-block:1.5rem; border-top:1px solid rgba(255,255,255,.18); color:rgba(255,255,255,.6); font-size:.78rem; }
@media (max-width:760px) { .wrap{width:min(100% - 2rem,1248px)} .header-inner{min-height:68px}.brand-note{display:none}.menu-toggle{display:block}.site-nav{display:none;position:absolute;left:0;right:0;top:68px;flex-direction:column;align-items:stretch;gap:0;padding:1rem;background:var(--white);border-bottom:1px solid var(--line)}.site-nav.is-open{display:flex}.site-nav a{padding:1rem;border-bottom:1px solid var(--line)}.nav-button{margin-top:1rem}.hero-inner,.section-grid,.about-grid,.contact-layout{grid-template-columns:1fr;gap:2.5rem}.hero-inner{min-height:auto;padding-block:5rem}.hero-panel{min-height:320px;padding:2rem}.hero-panel-title{margin-top:3rem}.section{padding-block:4.5rem}.cards{grid-template-columns:1fr;margin-top:2.5rem}.company-row{grid-template-columns:1fr;padding:1.8rem;align-items:start;gap:1.5rem}.form-grid,.footer-grid{grid-template-columns:1fr}.contact-form{padding:1.5rem}.footer-bottom{flex-direction:column}.section-grid h2{margin-bottom:0} }
