/*
Theme Name: Florida Nicotine Vending Slim Wall Banner Contact V4
Theme URI: https://floridanicotinevending.com
Author: OpenAI
Description: Original neon landing page style for Florida Nicotine Vending using the slim wall machine with Vapes Sold Here banner.
Version: 1.4.0
License: GPL-2.0-or-later
Text Domain: fnv-slim-wall-banner
*/
:root{--bg:#05050a;--panel:#0c0d19;--pink:#ff149d;--blue:#00b9ff;--gold:#ffb000;--text:#fff;--muted:#b8c0d8;--line:rgba(255,255,255,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:radial-gradient(circle at 15% 20%,rgba(255,20,157,.22),transparent 28%),radial-gradient(circle at 85% 15%,rgba(0,185,255,.2),transparent 30%),radial-gradient(circle at 50% 100%,rgba(255,176,0,.12),transparent 25%),var(--bg);overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.15;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:100% 4px;z-index:20}.smoke-loader{position:fixed;inset:0;z-index:9999;background:#030307;overflow:hidden;animation:loaderFade 1s ease 2.8s forwards;pointer-events:none}.smoke-loader:before,.smoke-loader:after,.smoke-puff{content:"";position:absolute;border-radius:50%;filter:blur(38px);opacity:.7;animation:smokeRise 3.2s ease-in-out forwards}.smoke-loader:before{width:55vw;height:55vw;background:rgba(255,20,157,.35);left:-12vw;bottom:-22vw}.smoke-loader:after{width:62vw;height:62vw;background:rgba(0,185,255,.32);right:-15vw;bottom:-25vw;animation-delay:.25s}.smoke-puff{width:48vw;height:48vw;background:rgba(255,255,255,.18);left:26vw;bottom:-20vw;animation-delay:.55s}.loader-text{position:absolute;inset:0;display:grid;place-items:center;text-align:center;font-weight:900;font-size:clamp(44px,9vw,110px);letter-spacing:.08em;color:transparent;-webkit-text-stroke:2px var(--pink);text-shadow:0 0 26px var(--pink),0 0 55px rgba(255,20,157,.7);animation:loaderText 2.4s ease forwards}@keyframes smokeRise{0%{transform:translateY(35vh) scale(.75);opacity:.1}45%{opacity:.85}100%{transform:translateY(-30vh) scale(1.8);opacity:0}}@keyframes loaderText{0%{opacity:0;transform:scale(.94)}35%,70%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.05)}}@keyframes loaderFade{to{opacity:0;visibility:hidden}}.smoke-bg{position:absolute;inset:0;pointer-events:none;opacity:.72;background:radial-gradient(circle at 20% 75%,rgba(255,255,255,.16),transparent 16%),radial-gradient(circle at 45% 55%,rgba(156,84,255,.20),transparent 20%),radial-gradient(circle at 70% 78%,rgba(0,185,255,.18),transparent 17%);filter:blur(28px);animation:drift 8s ease-in-out infinite alternate}@keyframes drift{from{transform:translateX(-2%) translateY(1%) scale(1)}to{transform:translateX(2%) translateY(-2%) scale(1.05)}}.site-header{position:sticky;top:0;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:18px 5vw;background:rgba(5,5,10,.82);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.1)}.logo{color:#fff;text-decoration:none;font-weight:900;letter-spacing:.5px;text-shadow:0 0 14px var(--pink)}.logo span{color:var(--pink)}nav{display:flex;gap:22px;align-items:center}nav a{color:#dfe6ff;text-decoration:none;font-size:14px}.nav-cta{padding:10px 14px;border:1px solid var(--pink);border-radius:999px;box-shadow:0 0 18px rgba(255,20,157,.5)}.hero{min-height:86vh;display:grid;grid-template-columns:1fr 470px;gap:50px;align-items:center;padding:80px 7vw 60px;position:relative;overflow:hidden}.hero-copy,.machine-wrap{position:relative;z-index:2}.eyebrow{color:var(--blue);text-transform:uppercase;letter-spacing:2px;font-size:13px;font-weight:800}h1{font-size:clamp(60px,11vw,150px);line-height:.85;margin:0;color:transparent;-webkit-text-stroke:2px var(--pink);text-shadow:0 0 20px var(--pink),0 0 45px rgba(255,20,157,.8)}h1 span{-webkit-text-stroke-color:var(--blue);text-shadow:0 0 20px var(--blue),0 0 45px rgba(0,185,255,.8)}h2{font-size:clamp(34px,5vw,66px);line-height:1;margin:10px 0 20px}h3{font-size:22px}.hero-text{font-size:20px;color:var(--muted);max-width:680px;line-height:1.6}.button{display:inline-block;border-radius:999px;padding:15px 22px;text-decoration:none;font-weight:900;border:0;cursor:pointer}.primary{background:linear-gradient(90deg,var(--pink),var(--blue));color:#fff;box-shadow:0 0 25px rgba(255,20,157,.65)}.secondary{color:#fff;border:1px solid rgba(255,255,255,.25);margin-left:10px}.machine-wrap{min-height:640px;display:grid;place-items:center}.machine-photo{width:min(470px,95%);border-radius:18px;filter:drop-shadow(0 0 20px rgba(0,185,255,.55)) drop-shadow(0 0 28px rgba(255,20,157,.25));position:relative;z-index:2}.machine-glow{position:absolute;width:440px;height:440px;border-radius:50%;filter:blur(70px);background:rgba(0,185,255,.2);z-index:1}.qr-strip,.content-section,.split-section,.contact-section{margin:42px auto;width:min(1120px,90vw);padding:42px;border:1px solid rgba(255,255,255,.14);border-radius:32px;background:rgba(12,13,25,.8);box-shadow:0 0 30px rgba(0,185,255,.12);position:relative;z-index:2}.qr-strip{display:flex;justify-content:space-between;align-items:center}.qr-strip img{width:132px;background:#fff;border-radius:12px;padding:8px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.cards article,.steps div{padding:24px;border-radius:24px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}.cards article:nth-child(odd){box-shadow:0 0 20px rgba(255,20,157,.18)}.cards article:nth-child(even){box-shadow:0 0 20px rgba(0,185,255,.18)}.cards p,.steps p,.split-section p,.contact-section p{color:var(--muted);line-height:1.6}.split-section{display:grid;grid-template-columns:1.2fr .8fr;gap:36px;align-items:center}.neon-list{list-style:none;padding:0;display:grid;gap:12px}.neon-list li{padding:12px 14px;border-left:4px solid var(--pink);background:rgba(255,255,255,.05)}.feature-panel{display:grid;grid-template-columns:1fr 1fr;gap:16px}.feature-panel span{min-height:120px;display:grid;place-items:center;border-radius:22px;font-size:34px;font-weight:900;background:#05060d;border:1px solid var(--blue);box-shadow:0 0 22px rgba(0,185,255,.35)}.feature-panel span:nth-child(2),.feature-panel span:nth-child(3){border-color:var(--pink);box-shadow:0 0 22px rgba(255,20,157,.35)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.steps b{color:var(--gold);font-size:32px}.contact-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:grid;gap:7px;color:#dfe6ff;font-weight:700}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:14px;border-radius:14px;border:1px solid rgba(255,255,255,.18);background:#060711;color:#fff}.contact-form label:nth-last-of-type(1),.contact-form button,.form-note,.form-msg{grid-column:1/-1}.form-note{font-size:13px;color:var(--muted)}.form-msg{padding:14px;border:1px solid var(--blue);color:#fff;background:rgba(0,200,255,.12);border-radius:8px}.footer{text-align:center;padding:38px 5vw;color:var(--muted);border-top:1px solid var(--line)}.fine-print{font-size:12px}@media(max-width:900px){nav{display:none}.hero,.split-section,.contact-section{grid-template-columns:1fr}.cards,.steps{grid-template-columns:1fr 1fr}.qr-strip{flex-direction:column;text-align:center}.machine-wrap{min-height:auto}.machine-photo{max-height:650px;width:auto;max-width:95%}}@media(max-width:700px){.hero h1{font-size:clamp(54px,18vw,88px);line-height:.9;color:#fff;-webkit-text-stroke:0;text-shadow:0 0 2px #fff,0 0 8px var(--pink),0 0 16px rgba(255,20,157,.75);letter-spacing:.01em;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased}.hero h1 span{color:#fff;-webkit-text-stroke:0;text-shadow:0 0 2px #fff,0 0 8px var(--blue),0 0 16px rgba(0,185,255,.75)}.loader-text{color:#fff;-webkit-text-stroke:0;text-shadow:0 0 2px #fff,0 0 8px var(--pink),0 0 18px rgba(255,20,157,.75)}.machine-photo{image-rendering:auto;filter:drop-shadow(0 0 14px rgba(0,185,255,.45)) drop-shadow(0 0 18px rgba(255,20,157,.25))}}@media(max-width:560px){.cards,.steps,.contact-form{grid-template-columns:1fr}.secondary{margin-left:0;margin-top:10px}.hero{padding-left:5vw;padding-right:5vw}.machine-photo{max-height:560px}}@media(max-width:420px){.hero h1{font-size:clamp(50px,17vw,76px)}.hero-text{font-size:17px}}

/* Real machine photo v2: unique filename prevents WordPress/browser cache from showing the older mockup. */
.machine-photo{background:transparent;object-fit:contain;}
@media(max-width:900px){.machine-photo{max-height:700px;width:auto;}}
@media(max-width:560px){.machine-photo{max-height:590px;width:auto;}}


/* Slim wall machine banner image: transparent cropped machine, no old mockup cache. */
.machine-photo{width:auto;max-width:95%;max-height:650px;border-radius:0;background:transparent;object-fit:contain;filter:drop-shadow(0 0 22px rgba(0,185,255,.50)) drop-shadow(0 0 34px rgba(255,20,157,.28));}
.machine-wrap{min-height:660px;}
@media(max-width:900px){.machine-photo{max-height:660px;width:auto;max-width:95%;}.machine-wrap{min-height:620px;}}
@media(max-width:560px){.machine-photo{max-height:560px;width:auto;max-width:100%;}.machine-wrap{min-height:540px;}}

/* contact form single-column on mobile */
@media(max-width:700px){.contact-form{grid-template-columns:1fr}.contact-form label,.contact-form button,.contact-form .form-note,.contact-form .form-msg{grid-column:1/-1}}


/* Contact form update v4 */
@media(max-width:700px){.contact-section{padding:28px 20px}.contact-form{grid-template-columns:1fr}.contact-form label,.contact-form button,.contact-form .form-note,.contact-form .form-msg{grid-column:1/-1}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}}
