/* Shared base for all 3 directions — palette carried over from /workspace/graham-site (warm brown + gold), re-tuned for light mode */
:root{--bg:#fbf6ef;--paper:#fffdf9;--sand:#f3e9dc;--ink:#2a1d15;--mut:#66513f;--line:#e6d8c6;--gold:#e0a85a;--gold2:#c9853a;--acc:#8a4e17;--r:18px;
--serif:Georgia,"Times New Roman",serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%}a{color:var(--acc)}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 14px;border-radius:8px;z-index:99}.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--acc);outline-offset:3px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 24px;border-radius:999px;background:var(--ink);color:#fff;text-decoration:none;font-weight:600;border:2px solid var(--ink);cursor:pointer;font:600 1rem var(--sans)}
.btn:hover{background:#000}.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:hover{background:var(--sand)}
.btn.warm{background:var(--acc);border-color:var(--acc)}.btn.warm:hover{background:#6f3e10}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:700;color:var(--acc);margin:0 0 12px}
.mut{color:var(--mut)}.ph-note{font-size:.8rem;color:var(--mut);font-style:italic}
/* placeholders */
.vid{position:relative;aspect-ratio:9/16;border-radius:var(--r);overflow:hidden;background:linear-gradient(160deg,var(--c1,#e9cfae),var(--c2,#b98a5e));display:flex;align-items:flex-end;padding:14px;color:#fff;isolation:isolate;border:0;width:100%;text-align:left;cursor:pointer;font:inherit}
.vid::before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.55),transparent 40%),radial-gradient(circle at 70% 75%,rgba(60,30,10,.35),transparent 45%);filter:blur(18px);z-index:-1}
.vid .tag{position:absolute;top:12px;left:12px;background:rgba(42,29,21,.78);color:#fff;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:4px 9px;border-radius:999px}
.vid .play{position:absolute;top:50%;left:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:rgba(255,255,255,.9);display:grid;place-items:center;color:var(--ink);font-size:1.1rem}
.vid .cap{position:relative;background:rgba(42,29,21,.78);padding:8px 12px;border-radius:12px;font-size:.88rem;line-height:1.35}
.vid .cap b{display:block;font-size:.95rem}
.photo{position:relative;border-radius:var(--r);overflow:hidden;background:linear-gradient(150deg,var(--c1,#ead6bd),var(--c2,#c79b6e));display:grid;place-items:center}
.photo::after{content:attr(data-label);position:absolute;bottom:10px;left:10px;background:rgba(255,255,255,.88);color:var(--ink);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:999px}
.photo .initial{font:700 3.2rem var(--serif);color:rgba(255,255,255,.92)}
.logo-ph{display:grid;place-items:center;min-height:56px;padding:10px 14px;border:1.5px dashed #bfa88f;border-radius:12px;color:var(--mut);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;text-align:center}
/* form */
.form{display:grid;gap:14px}.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form label{display:grid;gap:6px;font-weight:600;font-size:.92rem}
.form input,.form select,.form textarea{font:inherit;padding:12px 14px;border-radius:12px;border:1.5px solid #c9b59f;background:#fff;color:var(--ink);min-height:48px}
.form textarea{min-height:110px;resize:vertical}
.form .thanks{display:none;padding:14px;border-radius:12px;background:#eaf3e6;color:#24401c}.form.sent .thanks{display:block}
.reveal{opacity:1}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media (max-width:640px){.form .row{grid-template-columns:1fr}body{font-size:16px}}
.vid[hidden]{display:none!important}
