/*
Theme Name: The Cloud District — Smoke & Gold
Author: The Cloud District
Description: An informational brand theme with an animated entrance, smoke cursor, responsive navigation and editable homepage settings. No commerce functionality.
Version: 1.5.2
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: cloud-society
*/
:root{--bg:#090909;--panel:#121211;--gold:#d8ba80;--cream:#f4e9d6;--muted:#aaa69e;--line:#ffffff20}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--cream);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:5px;z-index:100}header{position:relative;z-index:5;border-bottom:1px solid var(--line);background:#090909ed}.nav{max-width:1400px;margin:auto;padding:23px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font:22px Georgia,serif;letter-spacing:2px}.wordmark small{display:block;font:9px Arial;letter-spacing:4px;color:var(--gold)}nav ul{display:flex;gap:30px;list-style:none;margin:0;padding:0}nav a{font-size:11px;text-transform:uppercase;letter-spacing:2px}nav a:hover{color:var(--gold)}.menu-toggle{display:none;background:none;color:var(--cream);border:1px solid var(--line);padding:8px 14px}.hero{min-height:760px;min-height:calc(100svh - 95px);position:relative;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;max-width:1440px;margin:auto;padding:65px 5% 75px;isolation:isolate;overflow:hidden}.hero:before{content:'';position:absolute;inset:10% -20%;background:radial-gradient(ellipse at 75% 55%,#9b78421c,transparent 50%);z-index:-1}.eyebrow{color:var(--gold);font:11px/1.5 Arial;letter-spacing:4px;text-transform:uppercase}.hero h1{font:clamp(54px,6.4vw,100px)/.98 Georgia,serif;letter-spacing:-3px;margin:25px 0}.hero h1 em{font-weight:400;color:var(--gold)}.hero p{color:var(--muted);max-width:380px;font-size:17px}.hero-art{width:112%;max-width:none;margin-left:-6%;mix-blend-mode:screen;filter:drop-shadow(0 30px 70px #b5822520)}.intro-play .hero-art{animation:arrival 2.8s cubic-bezier(.19,1,.22,1) both}@keyframes arrival{from{opacity:0;transform:scale(.72);filter:blur(14px)}to{opacity:1;transform:scale(1);filter:blur(0)}}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.button{display:inline-block;padding:14px 25px;border:1px solid var(--gold);font:11px Arial;letter-spacing:2px;text-transform:uppercase;background:var(--gold);color:#17130c}.button.secondary{background:transparent;color:var(--cream);border-color:var(--line)}.button:hover{filter:brightness(1.13)}.hero-foot{position:absolute;bottom:25px;left:5%;right:5%;display:flex;justify-content:space-between;font:10px Arial;letter-spacing:3px;color:var(--muted)}.strip{border-block:1px solid var(--line);padding:23px 5%;display:flex;justify-content:space-around;gap:20px;font:10px Arial;letter-spacing:3px;color:var(--gold)}.section{max-width:1280px;margin:auto;padding:100px 5%}.section h2{font:clamp(36px,4vw,60px)/1.1 Georgia,serif;margin:18px 0 25px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.section p{color:var(--muted)}.info{border-top:1px solid var(--line);padding:24px 0}.info h3{font:12px Arial;letter-spacing:2px;text-transform:uppercase;color:var(--gold)}.visit{background:linear-gradient(135deg,#181611,#101010);border:1px solid var(--line);padding:40px}.visit p{margin-bottom:25px}.page-content{max-width:900px;margin:auto;padding:80px 6%;min-height:65vh}.page-content h1{font:54px Georgia}.page-content a{text-decoration:underline;color:var(--gold)}.page-content img{max-width:100%;height:auto}.page-content input,.page-content textarea{max-width:100%}footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;gap:25px;justify-content:space-between;color:var(--muted);font-size:12px}.effects{background:transparent;border:1px solid var(--line);color:var(--muted);padding:7px 12px;font-size:11px}#cs-smoke{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:20}dialog{background:#10100f;color:var(--cream);border:1px solid #a88951;padding:48px;max-width:470px;width:calc(100% - 36px);text-align:center}dialog::backdrop{background:#000e;backdrop-filter:blur(9px)}dialog h2{font:40px Georgia;margin:10px 0}dialog p{color:var(--muted)}dialog .actions{justify-content:center}dialog small{display:block;color:var(--muted);margin-top:22px;font-size:11px}body.gate-open{overflow:hidden}.no-js-note{padding:14px;background:#252015;text-align:center;font-size:13px}@media(max-width:760px){.menu-toggle{display:block}nav{display:none;position:absolute;top:85px;left:0;right:0;padding:25px;background:#111;border-bottom:1px solid var(--line)}nav.open{display:block}nav ul{flex-direction:column;gap:20px}.hero{grid-template-columns:1fr;padding-top:45px;padding-bottom:65px;min-height:0}.hero h1{font-size:58px}.hero-art{width:100%;margin:0;grid-row:2}.hero-foot{font-size:8px;letter-spacing:1px}.split{grid-template-columns:1fr;gap:30px}.section{padding:65px 6%}.strip{font-size:8px;letter-spacing:1px}.visit{padding:26px}footer{flex-wrap:wrap}dialog{padding:30px 22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}#cs-smoke{display:none}}
/* Smoke & Gold 1.1 — cinematic brand layout */
:root{--logo-width:105px;--hero-size:590px;--content-width:1280px;--section-space:100px;--button-radius:2px;--smoke-alpha:.65;--smoke-speed:28s;--entrance-speed:3s}body{isolation:isolate}.ambient-smoke{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:var(--bg)}.ambient-smoke img{position:absolute;width:130%;height:130%;inset:-15%;object-fit:cover;opacity:var(--smoke-alpha);mix-blend-mode:screen;animation:smoke-drift var(--smoke-speed) ease-in-out infinite alternate;will-change:transform}.ambient-smoke img+img{transform:rotate(180deg);animation-name:smoke-counter;animation-delay:-13s;opacity:calc(var(--smoke-alpha)*.36)}@keyframes smoke-drift{from{transform:translate(-3%,2%) scale(1)}to{transform:translate(4%,-4%) scale(1.09)}}@keyframes smoke-counter{from{transform:rotate(180deg) translate(3%,1%) scale(1.1)}to{transform:rotate(180deg) translate(-4%,-2%) scale(1)}}header{position:sticky;top:0;background:#080808bd;backdrop-filter:blur(20px);border-bottom:1px solid #d8ba8030}.admin-bar header{top:32px}.nav{padding:8px 5%;max-width:var(--content-width);min-height:105px}.wordmark{display:block;line-height:0}.wordmark img{width:var(--logo-width);height:auto;max-height:150px;object-fit:contain}.cinematic.hero{max-width:none;width:100%;min-height:850px;display:flex;flex-direction:column;justify-content:center;padding:40px 5% 90px;text-align:center;gap:0}.cinematic .hero-art{width:min(var(--hero-size),85vw);height:auto;margin:0;position:relative;mix-blend-mode:normal;z-index:1;filter:drop-shadow(0 0 70px #d2943b25)}.cinematic .eyebrow{position:relative;z-index:2;font-size:9px;letter-spacing:6px}.cinematic .hero-copy{position:relative;z-index:2;margin-top:-12px}.cinematic h1{font-size:clamp(32px,3.5vw,52px);letter-spacing:-1.4px;margin:0 0 15px;line-height:1.12}.cinematic p{font-size:14px;max-width:510px;margin:0 auto;color:#c6c0b5}.cinematic .actions{justify-content:center;margin-top:26px}.hero-orbit{position:absolute;width:min(700px,95vw);aspect-ratio:1;border:1px solid #d8ba801f;border-radius:50%;top:90px;box-shadow:0 0 130px #c59d4514,inset 0 0 100px #c59d4510}.hero-orbit:after{content:'';position:absolute;inset:24px;border:1px dashed #d8ba801a;border-radius:50%}.intro-play .hero-art{animation-duration:var(--entrance-speed)}.button{position:relative;overflow:hidden;border-radius:var(--button-radius);padding:17px 29px;transition:transform .25s,box-shadow .25s;background:linear-gradient(120deg,var(--gold),#f2dfb5,var(--gold));box-shadow:0 6px 30px #bd975015}.button:hover{transform:translateY(-3px);box-shadow:0 12px 34px #bd975035}.button.secondary{background:#0b0b0b70}.strip{background:#0b0b0ba8;backdrop-filter:blur(10px)}.section{max-width:var(--content-width);padding-top:var(--section-space);padding-bottom:var(--section-space);position:relative}.split{gap:9%}.section h2{font-weight:400}.visit{background:linear-gradient(140deg,#242017b0,#0d0d0de0);backdrop-filter:blur(20px);border:1px solid #d8ba8040;box-shadow:0 25px 90px #0008}.info{border-top-color:#d8ba8030}.story-photo{display:block;width:100%;height:auto;max-height:480px;object-fit:cover;margin:30px 0;border:1px solid var(--line)}.feature-banner{position:relative;min-height:380px;margin:20px auto;padding:70px 6%;display:flex;align-items:end;overflow:hidden;border-block:1px solid #d8ba8030}.feature-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.feature-banner:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000e,#0001);z-index:-1}.feature-banner h2{margin-bottom:12px}.announcement{text-align:center;background:var(--gold);color:#12100c;font-size:11px;letter-spacing:2px;padding:9px 20px}.embers{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.embers i{position:absolute;bottom:-12px;left:calc(var(--i)*8.3%);height:3px;width:3px;background:var(--gold);border-radius:50%;box-shadow:0 0 12px 2px #e4b35d66;animation:ember-rise calc(12s + var(--i)*1.1s) linear infinite;animation-delay:calc(var(--i)*-3s)}@keyframes ember-rise{0%{transform:translate(0,0);opacity:0}20%{opacity:.6}80%{opacity:.3}100%{transform:translate(65px,-100vh);opacity:0}}.reveal-ready{opacity:0;transform:translateY(25px);transition:opacity .9s,transform .9s}.reveal-ready.in-view{opacity:1;transform:none}.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}footer{align-items:center;background:#070707b0;gap:25px}.footer-logo img{width:90px;height:auto}.social-links{display:flex;justify-content:center;gap:25px;padding:0 20px 30px;font-size:12px;color:var(--gold)}.gate-logo{width:150px;height:auto}dialog{background:radial-gradient(ellipse at top,#30271c,#0b0b0b 70%);box-shadow:0 30px 140px #000}.effects-paused .ambient-smoke img,.effects-paused .embers i{animation-play-state:paused}.effects-paused .ambient-smoke{opacity:.2}.effects-paused .embers{display:none}@media(max-width:760px){.cinematic.hero{min-height:0;padding:35px 5% 75px}.cinematic .hero-art{width:min(var(--hero-size),95vw)}.cinematic .hero-copy{margin-top:0}.cinematic h1{font-size:34px}.cinematic p{font-size:13px;max-width:330px}.cinematic .eyebrow{font-size:8px;letter-spacing:3px}.hero-orbit{top:65px}.nav{min-height:85px}.wordmark img{width:min(var(--logo-width),90px)}nav{top:100%}.section{padding-top:calc(var(--section-space)*.7);padding-bottom:calc(var(--section-space)*.7)}.feature-banner{min-height:280px}.ambient-smoke img+img{display:none}.admin-bar header{top:46px}.footer-logo img{width:70px}}@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.embers{display:none}.ambient-smoke img{will-change:auto}}

/* Royal purple refinement — 1.2 */
:root{--royal-purple:#210d32;--wordmark-size:35px;--smoke-alpha:.28}
body{background:linear-gradient(180deg,var(--bg) 0%,#0b0710 20%,var(--royal-purple) 49%,#100919 76%,var(--bg) 100%);background-attachment:fixed;min-height:100vh}
.ambient-smoke{background:transparent;mix-blend-mode:screen}
.ambient-smoke img+img{opacity:calc(var(--smoke-alpha)*.18)}
.royal-wordmark{line-height:1.15;flex-shrink:0;letter-spacing:-1.2px;padding:12px 0}
.royal-wordmark span{display:block;font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:var(--wordmark-size);font-variant:small-caps;color:#f1dfba;white-space:nowrap;text-shadow:0 1px 1px #000,0 0 16px #d8ba8015;transition:text-shadow .25s,color .25s}
.royal-wordmark:hover span,.royal-wordmark:focus-visible span{color:#fff2d5;text-shadow:0 0 8px #f5d89899,0 0 23px #d8ba8066,0 0 40px #c29aff55}
nav a{font-size:12px;font-weight:800;letter-spacing:1.9px;transition:color .22s,text-shadow .22s}
nav a:hover,nav a:focus-visible{color:#fff1cf;text-shadow:0 0 7px #ffe1aacc,0 0 20px #d8ba8099,0 0 32px #bc8cff88}
.hero-orbit{border-color:#d7b2f52b;box-shadow:0 0 150px #bd80ff15,inset 0 0 100px #bc7bff0c}
.visit{background:linear-gradient(140deg,#371e49a8,#100b17de);border-color:#d8ba8040}
header{background:#09070ddb}.nav{min-height:90px}.strip{background:#100a17a8}
@media(max-width:760px){.royal-wordmark span{font-size:clamp(23px,6.4vw,var(--wordmark-size))}.royal-wordmark{letter-spacing:-.8px}.nav{min-height:78px;gap:14px}nav a{font-size:14px}.menu-toggle{font-weight:700}}

/* Logo hover: gentle refractive heat and a short smoke bloom. */
.hero-logo-interactive{position:relative;width:min(var(--hero-size),85vw);outline-offset:8px;border-radius:45%;z-index:1;transition:transform .65s ease}
.cinematic .hero-logo-interactive .hero-art{width:100%;display:block}
.hero-logo-interactive.heat-active{filter:url(#cs-heat);transform:scale(1.025)}
.logo-hover-smoke{position:absolute;inset:-5%;pointer-events:none;background:url('assets/smoke.png') center/cover;mix-blend-mode:screen;opacity:0;transition:opacity .7s;mask-image:radial-gradient(ellipse,#000 35%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse,#000 35%,transparent 72%)}
.heat-active .logo-hover-smoke{opacity:.32;animation:logo-smoke-bloom 4s ease-in-out infinite alternate}
@keyframes logo-smoke-bloom{from{transform:translateY(3%) scale(.98)}to{transform:translateY(-5%) scale(1.08)}}
.heat-filter{position:absolute;pointer-events:none}
@media(max-width:760px){.hero-logo-interactive{width:min(var(--hero-size),95vw)}}
@media(prefers-reduced-motion:reduce){.hero-logo-interactive.heat-active{filter:none;transform:none}.logo-hover-smoke{display:none}}

/* Visual-first layout 1.3 */
.visual-gallery{max-width:var(--content-width);margin:0 auto;padding:0 5%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.visual-gallery:empty{display:none}.visual-tile{margin:0;position:relative;overflow:hidden;border:1px solid #d8ba8030;background:#0a0710;min-height:260px}.visual-tile:first-child{grid-column:1/-1}.visual-tile img{display:block;width:100%;height:auto;transition:transform .7s}.visual-tile:hover img{transform:scale(1.02)}.visual-tile figcaption{position:absolute;bottom:0;left:0;right:0;padding:35px 25px 22px;background:linear-gradient(transparent,#000d);font:22px Georgia,serif}.store-details{display:flex;justify-content:center;gap:90px;margin:45px auto;padding:30px 6%;border-block:1px solid #d8ba8025;max-width:var(--content-width)}.store-details span{font-size:10px;letter-spacing:3px;color:var(--gold)}.store-details p{font-size:14px;margin:8px 0;color:var(--muted)}.cinematic.hero{min-height:760px;padding-bottom:65px}@media(max-width:760px){.visual-gallery{grid-template-columns:1fr;gap:16px}.visual-tile{min-height:0}.store-details{gap:25px;justify-content:space-between}.cinematic.hero{min-height:0}.visual-tile figcaption{font-size:18px}}@media(prefers-reduced-motion:reduce){.visual-tile:hover img{transform:none}}

.cinematic .launch-note{font-size:11px;letter-spacing:3px;color:var(--gold);margin:18px auto 0;}

/* Short, readable menu glitch on hover and keyboard focus. */
#cs-nav a{display:inline-block;position:relative}
#cs-nav a:hover,#cs-nav a:focus-visible{animation:cs-menu-static .55s steps(1,end) 1;text-shadow:0 0 8px #ffe1aa99,0 0 22px #bc8cff88}
@keyframes cs-menu-static{
0%,100%{transform:translate(0);text-shadow:0 0 8px #ffe1aa99,0 0 22px #bc8cff88}
12%{transform:translate(-1px,0);text-shadow:2px 0 #b992ee,-2px 0 #e4c784}
22%{transform:translate(1px,0);text-shadow:-1px 0 #b992ee,2px 0 #e4c784}
34%{transform:translate(0);text-shadow:0 0 12px #e4c784}
62%{transform:translate(-1px,0);text-shadow:2px 0 #b992ee,-1px 0 #e4c784}
72%{transform:translate(0);text-shadow:0 0 8px #ffe1aa99,0 0 22px #bc8cff88}
}
@media(prefers-reduced-motion:reduce){#cs-nav a:hover,#cs-nav a:focus-visible{animation:none;transform:none}}

/* Approved Las Vegas backdrop: dark charcoal with a 50% skyline. */
:root{--charcoal-center:#101010;--skyline-alpha:.5}
body{background:linear-gradient(180deg,#000 0%,var(--charcoal-center) 50%,#000 100%);background-attachment:fixed}
.vegas-backdrop{position:fixed;inset:0;z-index:-1;pointer-events:none;background:url('assets/vegas-skyline.png') center center/cover no-repeat;opacity:var(--skyline-alpha)}
.ambient-smoke{opacity:.35}
.visit{background:linear-gradient(140deg,#181818b0,#080808de)}
header{background:#080808db}.strip{background:#090909a8}
@media(max-width:760px){.vegas-backdrop{background-size:auto 100%;background-position:48% center}}

/* Entrance 1.5.0: replay every load, only after the artwork is ready. */
.cs-js body[data-entrance="on"]:not(.intro-play):not(.intro-still) .hero-art{opacity:0}
body.intro-play .hero-art{animation:cs-logo-arrival var(--entrance-speed,3s) cubic-bezier(.16,1,.3,1) both}
@keyframes cs-logo-arrival{0%{opacity:0;transform:translateY(35px) scale(.38);filter:blur(22px)}55%{opacity:1;filter:blur(3px)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
body.intro-still .hero-art{opacity:1;animation:none}
@media(prefers-reduced-motion:reduce){.cs-js body[data-entrance="on"] .hero-art{opacity:1}body.intro-play .hero-art{animation:none;transform:none;filter:none}}

/* Selectable logo entrances and accent-matched button glow. */
.button:hover,.button:focus-visible,button:hover,button:focus-visible,input[type="submit"]:hover,input[type="submit"]:focus-visible{
 box-shadow:0 0 12px var(--gold),0 0 32px color-mix(in srgb,var(--gold) 55%,transparent);border-color:var(--gold);
}
button,input[type="submit"]{transition:box-shadow .25s,border-color .25s,transform .25s}
.button:focus-visible,button:focus-visible,input[type="submit"]:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
body.intro-play[data-logo-effect="fade"] .hero-art{animation-name:cs-fade}
@keyframes cs-fade{from{opacity:0}to{opacity:1}}
body.intro-play[data-logo-effect="fade-cycle"] .hero-art{animation-name:cs-fade-cycle}
@keyframes cs-fade-cycle{0%{opacity:1}35%{opacity:0}100%{opacity:1}}
body.intro-play[data-logo-effect="bounce"] .hero-art{animation-name:cs-bounce}
@keyframes cs-bounce{0%{opacity:0;transform:translateY(-100px) scale(.75)}55%{opacity:1;transform:translateY(18px) scale(1.03)}75%{transform:translateY(-10px) scale(.98)}100%{opacity:1;transform:none}}
body.intro-play[data-logo-effect="spin"] .hero-art{animation-name:cs-spin}
@keyframes cs-spin{from{opacity:0;transform:rotate(-180deg) scale(.35)}to{opacity:1;transform:none}}
body.intro-play[data-logo-effect="glitch"] .hero-art{animation-name:cs-glitch}
@keyframes cs-glitch{0%{opacity:0;transform:translateX(-9px);filter:blur(4px)}20%,45%{opacity:.7;transform:translateX(8px) skewX(6deg)}30%,60%{opacity:1;transform:translateX(-6px) skewX(-4deg)}75%{transform:translateX(3px)}100%{opacity:1;transform:none;filter:none}}
body.intro-play[data-logo-effect="glow"] .hero-art{animation-name:cs-glow}
@keyframes cs-glow{0%{opacity:0;filter:blur(12px) drop-shadow(0 0 0 var(--gold))}65%{opacity:1;filter:blur(0) drop-shadow(0 0 32px var(--gold))}100%{opacity:1;filter:drop-shadow(0 0 12px var(--gold))}}
body.intro-play[data-logo-effect="dissolve"] .hero-art{animation-name:cs-dissolve}
@keyframes cs-dissolve{0%{opacity:0;filter:blur(30px);transform:scale(1.08)}100%{opacity:1;filter:blur(0);transform:none}}
body.intro-play[data-logo-effect="rise"] .hero-art{animation-name:cs-rise}
@keyframes cs-rise{from{opacity:0;transform:translateY(90px)}to{opacity:1;transform:none}}
body.intro-play[data-logo-effect="slide"] .hero-art{animation-name:cs-slide}
@keyframes cs-slide{from{opacity:0;transform:translateX(-120px)}to{opacity:1;transform:none}}
body.intro-play[data-logo-effect="flip"] .hero-art{animation-name:cs-flip}
@keyframes cs-flip{from{opacity:0;transform:perspective(900px) rotateY(-90deg)}to{opacity:1;transform:perspective(900px) rotateY(0)}}
body.intro-play[data-logo-effect="appear"] .hero-art,body[data-logo-effect="static"] .hero-art{animation:none;opacity:1}
@media(prefers-reduced-motion:reduce){body.intro-play[data-logo-effect] .hero-art{animation:none;opacity:1;transform:none;filter:none}}
