:root{--bg:#f3efe1;--surf:#e6ded0;--text:#3a3328;--accent:#b08a5e;--act:#141414;--stext:#141414;--muted:#8d8272;--border:rgba(58,51,40,0.14);--veil:rgba(184,178,166,0.45);--rad:22px;--hf:Optima, Candara, 'Segoe UI', sans-serif;--bf:Candara, Optima, 'Segoe UI', sans-serif;--pad:5.6rem}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--bf);line-height:1.6;overflow-x:hidden}
h1,h2,h3{font-family:var(--hf);font-weight:800;line-height:1.05}
.pxnav{position:fixed;top:0;left:0;right:0;z-index:30;display:flex;justify-content:space-between;
  align-items:center;padding:16px 6vw;background:color-mix(in srgb,var(--bg) 76%,transparent);backdrop-filter:blur(8px)}
.pxbrand{font-family:var(--hf);font-weight:800;font-size:20px;text-decoration:none;color:var(--text)}
.pxnav nav a{color:var(--muted);text-decoration:none;margin-left:22px;font-size:14px}
.pxnav nav a:hover{color:var(--accent)}
.pxkick{color:var(--accent);letter-spacing:.28em;font-size:12px;text-transform:uppercase;font-weight:700}
.pxhero{position:relative;height:130vh;overflow:hidden;display:flex;align-items:center;justify-content:center}
.pxplane{position:absolute;left:50%;top:50%;will-change:transform}
.pxplane img{display:block}
.pxfar{width:120vw;transform:translate(-50%,-60%)}
.pxfar img{width:100%;height:70vh;object-fit:cover;filter:blur(2px) brightness(.8)}
.pxmid{width:64vw;left:22%;top:34%}
.pxmid img{width:100%;border-radius:var(--rad);box-shadow:0 30px 60px rgba(0,0,0,.4)}
.pxnear{width:40vw;left:70%;top:70%}
.pxnear img{width:100%;border-radius:var(--rad);box-shadow:0 24px 50px rgba(0,0,0,.5)}
.pxhero::after{content:"";position:absolute;inset:0;background:var(--veil);pointer-events:none}
.pxcopy{position:relative;z-index:5;text-align:center;max-width:760px;padding:0 6vw;will-change:transform}
.pxcopy h1{font-size:clamp(46px,10vw,140px);margin:14px 0 18px;text-shadow:0 6px 30px rgba(0,0,0,.5)}
.pxcopy p{color:#fff;font-size:clamp(17px,2.2vw,22px);margin-bottom:24px;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.pxbtn{display:inline-block;background:var(--accent);color:var(--act);text-decoration:none;
  padding:14px 32px;border-radius:99px;font-weight:700;letter-spacing:.04em}
.pxbtn:hover{filter:brightness(1.08)}
.pxband{background:var(--surf);color:var(--stext);position:relative;z-index:6}
.pxband-in{max-width:820px;margin:0 auto;padding:var(--pad) 6vw;text-align:center}
.pxband-in h2{font-size:clamp(28px,4.5vw,50px);margin-bottom:16px}
.pxband-in p{color:color-mix(in srgb,var(--stext) 76%,transparent);font-size:19px}
.pxsection{max-width:1100px;margin:0 auto;padding:var(--pad) 6vw}
.pxsection>h2{font-size:clamp(28px,4.5vw,50px);margin-bottom:26px;text-align:center}
.pxgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.pxc{background:color-mix(in srgb,var(--surf) 60%,var(--bg));border:1px solid var(--border);
  border-radius:var(--rad);padding:26px}
.pxc span{font-family:var(--hf);color:var(--accent);font-size:30px;font-weight:800}
.pxc h3{font-size:20px;margin:8px 0 8px}
.pxc p{color:var(--muted);font-size:15px}
.pxgallery{display:grid;gap:24px;padding:var(--pad) 6vw;max-width:1200px;margin:0 auto}
.pxstrip{margin:0;overflow:hidden;border-radius:var(--rad);border:1px solid var(--border)}
.pxstrip img{width:100%;height:52vh;object-fit:cover;display:block;transition:transform .8s ease}
.pxstrip:hover img{transform:scale(1.05)}
.pxcontact{background:var(--surf);color:var(--stext)}
.pxcontact-in{max-width:760px;margin:0 auto;padding:var(--pad) 6vw;text-align:center}
.pxcontact-in h2{font-size:clamp(28px,4.5vw,50px);margin-bottom:14px}
.pxlines{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin:20px 0 24px;
  color:color-mix(in srgb,var(--stext) 74%,transparent)}
.pxfoot{text-align:center;padding:40px;color:var(--muted);font-size:13px;letter-spacing:.1em;text-transform:uppercase}
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
[data-reveal].in{opacity:1;transform:none}
@media(max-width:760px){.pxmid,.pxnear{position:relative;left:0;top:0;width:88vw;transform:none;margin:8px auto}
  .pxfar{display:none}.pxhero{height:auto;padding:100px 0 40px}.pxnav nav a{margin-left:14px;font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
  .pxplane{transform:none!important}[data-reveal]{opacity:1;transform:none;transition:none}
  .pxstrip img{transition:none}}


.xq{box-sizing:border-box;font-family:Candara, Optima, 'Segoe UI', sans-serif;color:#3a3328;padding:56px 24px;width:100%}
.xq *{box-sizing:border-box;margin:0}
.xq .xq-wrap{max-width:1060px;margin:0 auto}
.xq h2{font-family:Optima, Candara, 'Segoe UI', sans-serif;font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.xq .xq-kick{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#b08a5e;margin-bottom:10px;font-weight:700}

.xq-quoterail{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.xq-quote{border:1px solid rgba(58,51,40,0.14);border-radius:20px;padding:22px;background:#e6ded0;position:relative}
.xq-quote::before{content:"\201C";position:absolute;top:-4px;left:14px;font-family:Optima, Candara, 'Segoe UI', sans-serif;font-size:3rem;color:#b08a5e;opacity:.5}
.xq-quote p{font-style:italic;margin:10px 0 12px;line-height:1.55}
.xq-quote cite{font-style:normal;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#8d8272}


.xq-cta{background:#b08a5e;color:#141414}
.xq-cta h2,.xq-cta p{color:#141414}
.xq-cta p{opacity:.85;max-width:52ch}
.xq-cta-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.xq-btn{display:inline-block;background:#f3efe1;color:#3a3328;text-decoration:none;font-weight:700;padding:14px 30px;border-radius:20px;font-family:Optima, Candara, 'Segoe UI', sans-serif}
.xq-btn:hover{transform:translateY(-2px)}


/* =====================================================
   DESIGN DNA: terminal-green
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
body,p,li,a,td,th,dt,dd,input,textarea{font-family:'Courier New', Courier, monospace !important}
h1,h2,h3{font-family:'Courier New', Courier, monospace !important;text-transform:uppercase !important;letter-spacing:.06em !important}
h1::after{content:'\2588';margin-left:.15em;color:#b08a5e}
@media (prefers-reduced-motion: no-preference){@keyframes dnablink{50%{opacity:0}}h1::after{animation:dnablink 1.1s steps(1) infinite}}
html::before{content:'';position:fixed;inset:0;z-index:99980;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.5) 0 1px,transparent 1px 3px);opacity:.10;}
img{filter:grayscale(1) contrast(1.25) brightness(.92);border-radius:0 !important;border:1px solid rgba(176,138,94,.6) !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:0 !important;border:1px solid #b08a5e !important;font-family:'Courier New', Courier, monospace !important;text-transform:uppercase;box-shadow:none !important}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:0 !important;border:1px solid rgba(176,138,94,.45) !important;box-shadow:none !important}
::selection{background:#b08a5e;color:#f3efe1}
