/* I AM FLAVOR PARK page styles. Base tokens, type, buttons, header: styles.css (shared with flavorpark.com teaser). */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.emoji{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}
.hash{color:var(--copper);font-weight:800;letter-spacing:.06em}
.top-cta{display:flex;align-items:center;gap:10px}
.ig-mini{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2)}
.ig-mini svg{width:18px;height:18px;fill:#fff}.ig-mini:hover{background:var(--crimson);border-color:var(--crimson)}
.top .btn{padding:12px 20px;font-size:.7rem}
.btn.sm{padding:12px 18px;font-size:.68rem}
.badge{display:inline-flex;align-items:center;font-size:.58rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:4px 9px;border-radius:99px;white-space:nowrap}
.badge.ex{background:rgba(11,10,36,.55);color:#fff;border:1px dashed rgba(255,255,255,.55);backdrop-filter:blur(4px)}
.badge.feat{background:var(--cream);color:var(--ink)}
.badge.sm{font-size:.52rem;padding:3px 7px}
/* brand skins (abstract, no photos) */
.s-cop{background:radial-gradient(120% 80% at 20% 0%,#ff9a6b 0%,transparent 55%),linear-gradient(160deg,#00e5d4,#2a1460)}
.s-cop2{background:linear-gradient(135deg,#ffd3b0,#00e5d4)}
.s-red{background:radial-gradient(100% 70% at 80% 10%,#ff6fb0 0%,transparent 55%),linear-gradient(170deg,#ff2e88,#3a0f5c)}
.s-red2{background:conic-gradient(from 210deg at 70% 30%,#ff2e88,#5b1fb8,#00e5d4,#ff2e88)}
.s-ink{background:radial-gradient(80% 90% at 0% 100%,rgba(255,46,136,.45),transparent 60%),radial-gradient(70% 80% at 100% 0%,rgba(123,47,247,.45),transparent 60%),#15123a}
.s-ink2{background:linear-gradient(180deg,#1c1747 0%,#0b0a24 60%),#111}
.s-dusk{background:linear-gradient(200deg,#00e5d4 0%,#ff2e88 55%,#160b3d 100%)}
.s-dusk2{background:linear-gradient(20deg,#0b0a24 10%,#5b1fb8 60%,#ff9a6b 100%)}
.s-grid{background:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px) 0 0/22px 22px,linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px) 0 0/22px 22px,linear-gradient(150deg,#2a1460,#00e5d4)}
.s-grid2{background:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px) 0 0/28px 28px,linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px) 0 0/28px 28px,linear-gradient(120deg,#160b3d,#ff2e88 70%,#00e5d4)}
.s-stripe{background:repeating-linear-gradient(-45deg,rgba(255,255,255,.07) 0 14px,transparent 14px 28px),linear-gradient(110deg,#ff2e88,#00e5d4)}
.s-halo{background:radial-gradient(circle at 50% 45%,#fff4ec 0 14%,#00e5d4 15% 32%,#ff2e88 33% 52%,#160b3d 53%)}
/* hero */
.ihero{position:relative;overflow:hidden;padding:84px 0 0;
 background:radial-gradient(55% 70% at 8% 0%,rgba(123,47,247,.35),transparent 70%),radial-gradient(50% 60% at 100% 90%,rgba(255,46,136,.38),transparent 70%),var(--ink)}
.ihero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(70% 60% at 40% 45%,#000,transparent);pointer-events:none}
.ihero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding-bottom:84px}
.iam-title{margin:26px 0 22px;line-height:1}
.i-am{display:block;font-weight:900;font-size:clamp(3.4rem,9vw,7.4rem);letter-spacing:-.02em;color:var(--copper);line-height:.9;margin-bottom:14px;
 -webkit-text-stroke:0;text-shadow:0 10px 40px rgba(123,47,247,.25)}
.iam-title img{width:min(640px,100%);filter:drop-shadow(0 10px 40px rgba(0,0,0,.5))}
.bio{font-size:clamp(1.02rem,1.6vw,1.22rem);color:#ece8fa;font-weight:400;margin-bottom:30px}
.bio b{color:#fff;font-weight:800}
.ihero .ctas{display:flex;gap:14px;flex-wrap:wrap}
.hint{margin-top:22px;color:var(--muted);font-size:.86rem}
.hint b{color:#fff}
.ihero-art{display:flex;justify-content:center}
.stack{position:relative;width:min(420px,100%);aspect-ratio:4/5}
.card{position:absolute;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 60px rgba(0,0,0,.5)}
.card .badge{position:absolute;top:14px;left:14px}
.card .glyph{position:absolute;inset:0;display:grid;place-items:center}
.card .glyph svg{width:54px;height:54px;fill:rgba(255,255,255,.85)}
.c-a{width:62%;height:70%;left:0;top:4%;transform:rotate(-6deg)}
.c-b{width:58%;height:66%;right:0;top:20%;transform:rotate(5deg)}
.c-c{width:46%;left:20%;bottom:-2%;background:#15123a;padding:16px;text-align:center;transform:rotate(-1deg)}
.c-c img{width:72%;margin:0 auto 8px;border-radius:50%}
.c-c .handle{font-weight:800;font-size:.86rem}
.hashchip{position:absolute;right:-4%;bottom:12%;background:var(--crimson);color:#fff;font-weight:800;letter-spacing:.08em;font-size:.86rem;padding:10px 16px;border-radius:99px;transform:rotate(-4deg);box-shadow:0 14px 30px rgba(255,46,136,.4)}
.ticker{position:relative;z-index:1;background:var(--crimson);overflow:hidden;white-space:nowrap;transform:rotate(-1.2deg) scale(1.03);margin-bottom:-6px}
.tick-track{display:inline-flex;gap:26px;padding:14px 0;animation:tick 32s linear infinite;font-weight:800;letter-spacing:.18em;text-transform:uppercase;font-size:.84rem}
.tick-track i{font-style:normal;color:rgba(255,255,255,.55);font-size:.6rem;align-self:center}
@keyframes tick{to{transform:translateX(-50%)}}
/* section heads */
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:20px}
.sec-head h2{margin-bottom:0}
.sec-head .note{max-width:380px}
.filters{display:flex;gap:8px;flex-wrap:wrap}
.filters button{font:700 .68rem "Montserrat",sans-serif;letter-spacing:.18em;text-transform:uppercase;padding:11px 16px;border-radius:99px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;cursor:pointer}
.filters button:hover{border-color:#fff}.filters button.on{background:var(--crimson);border-color:var(--crimson)}
.center{text-align:center;margin-top:36px}
/* wall */
.wall{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:118px;grid-auto-flow:dense;gap:14px}
.tile{margin:0;position:relative;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;justify-content:flex-end;transition:transform .25s,box-shadow .25s}
.tile:hover{transform:translateY(-4px);box-shadow:0 22px 40px rgba(0,0,0,.45)}
.tile.sq{grid-row:span 2}.tile.tall{grid-row:span 4}.tile.wide{grid-column:span 2;grid-row:span 2}
.tile .badge.ex{position:absolute;top:12px;left:12px;z-index:2}
.tile .badge.feat{position:absolute;top:12px;right:12px;z-index:2}
.tile .dur{position:absolute;bottom:58px;right:12px;font-size:.66rem;font-weight:700;background:rgba(0,0,0,.55);padding:3px 7px;border-radius:6px;z-index:2}
.tile .glyph{position:absolute;inset:0;display:grid;place-items:center}
.tile .glyph svg{width:40px;height:40px;fill:rgba(255,255,255,.8)}
.tile .glyph.play svg{width:30px;height:30px;margin-left:4px}
.tile .glyph.play{inset:auto;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.4);backdrop-filter:blur(4px)}
.tile .wm{position:absolute;right:-6px;bottom:30px;font-weight:900;font-size:6rem;line-height:1;color:rgba(255,255,255,.07);letter-spacing:-.04em;pointer-events:none}
.tile figcaption{position:relative;z-index:2;padding:14px;background:linear-gradient(transparent,rgba(0,0,0,.65));display:grid;gap:4px}
.tile .cap{font-weight:700;font-size:.86rem;line-height:1.3}
.tile .meta{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;color:#ece8fa}
.tile .likes{display:inline-flex;align-items:center;gap:4px}
.tile .likes svg{width:12px;height:12px;fill:#ff7fbf}
.tile.q{justify-content:space-between;padding-top:46px}
.tile.q blockquote{padding:4px 22px;font-weight:800;font-size:clamp(1rem,1.7vw,1.5rem);line-height:1.2;letter-spacing:-.01em}
.tile.q blockquote::before{content:"\201C";display:block;font-size:3rem;line-height:.6;color:var(--crimson);margin-bottom:6px}
.tile.q.s-cop2 blockquote{color:var(--ink)}.tile.q.s-cop2 blockquote::before{color:var(--ink)}
.tile.q figcaption{display:flex;justify-content:space-between;font-size:.72rem;font-weight:600;background:none}
.tile.q.s-cop2 figcaption{color:var(--ink)}.tile.q .tag{color:var(--copper)}.tile.q.s-cop2 .tag{color:#5b1fb8}
.tile.q.s-cop2 .badge.ex{color:var(--ink);border-color:rgba(11,10,36,.5);background:rgba(255,255,255,.35)}
/* spotlight */
.spot-sec{background:linear-gradient(180deg,rgba(123,47,247,.08),rgba(255,46,136,.08))}
.spots{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:14px;overflow-x:auto;padding:6px 2px 14px;scroll-snap-type:x mandatory}
.spot{scroll-snap-align:start;display:flex;gap:14px;align-items:center;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:16px}
.av{flex:0 0 64px;height:64px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:1.1rem;box-shadow:0 0 0 3px var(--ink-2),0 0 0 5px var(--crimson)}
.spot h3{font-size:.95rem;font-weight:800;margin-top:6px}
.spot p{font-size:.78rem;color:var(--copper);font-weight:700;letter-spacing:.06em;text-transform:uppercase}
/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:10px}
.step{position:relative;border:1px solid var(--line);border-radius:18px;padding:28px 24px;background:rgba(255,255,255,.03);overflow:hidden}
.step::after{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,var(--copper),var(--crimson))}
.step .num{display:block;font-weight:900;font-size:2.2rem;line-height:1;color:var(--copper);margin-bottom:14px}
.step h3{font-size:1.05rem;font-weight:800;margin-bottom:6px;letter-spacing:.02em}
.step p{color:#cfcbe6;font-size:.9rem}
/* submit */
.submit{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:start}
.igcard{display:flex;align-items:center;gap:16px;text-decoration:none;margin:26px 0 20px;padding:16px;border-radius:18px;background:var(--ink-2);border:1px solid var(--line);transition:border-color .2s}
.igcard:hover{border-color:var(--crimson)}
.igcard img{border-radius:50%;flex:0 0 72px}
.igcard b{display:block;font-size:1rem}
.igcard small{display:block;color:#cfcbe6;font-size:.8rem;line-height:1.5;margin-top:2px}
.igcard .follow{margin-left:auto;background:var(--crimson);color:#fff;font-weight:700;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;padding:9px 14px;border-radius:99px}
.sform{background:var(--ink-2);border:1px solid var(--line);border-radius:24px;padding:30px;display:grid;gap:16px;box-shadow:0 30px 60px rgba(0,0,0,.35)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sform label{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:#dad6ee;display:grid;gap:8px}
.sform input[type=text],.sform input[type=email],.sform textarea,.sform select{width:100%;padding:14px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);color:#fff;font:500 .92rem "Montserrat",sans-serif;letter-spacing:0;text-transform:none}
.sform select option{color:#111}
.sform input:focus,.sform textarea:focus,.sform select:focus{outline:2px solid var(--crimson);outline-offset:1px}
.drop{border:1.5px dashed rgba(255,255,255,.28);border-radius:14px;padding:22px;text-align:center;display:grid;gap:4px;justify-items:center;text-transform:none;letter-spacing:0;background:rgba(123,47,247,.06)}
.drop .glyph svg{width:30px;height:30px;fill:var(--copper)}
.drop b{font-size:.92rem;color:#fff}.drop small{color:var(--muted);font-weight:500;font-size:.78rem}
.chk{display:flex!important;gap:12px!important;align-items:flex-start;text-transform:none!important;letter-spacing:0!important;font-weight:500!important;font-size:.84rem!important;color:#cfcbe6!important;line-height:1.5}
.chk input{margin-top:4px;width:16px;height:16px;flex:0 0 16px;accent-color:var(--crimson)}
.sform .btn{width:100%}
/* footer */
.ifoot{border-top:1px solid var(--line);padding:56px 0 30px;color:var(--muted);font-size:.86rem;background:radial-gradient(50% 120% at 100% 100%,rgba(255,46,136,.18),transparent 70%)}
.ifoot .wrap{display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap;align-items:flex-start}
.ifoot img{height:22px;width:auto;margin-bottom:12px}
.ifoot .fcol p{margin-bottom:16px}
.ifoot .right{text-align:right}
.ifoot .social{margin-top:0;justify-content:flex-end}
.hash.big{font-size:1.3rem;margin-top:16px}
.ifoot .fine{margin-top:36px;padding-top:20px;border-top:1px solid var(--line);font-size:.76rem;align-items:center}
.ifoot .fine a{color:#dad6ee}
@media (max-width:1000px){.wall{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:1fr 1fr}}
@media (max-width:860px){
 .ihero{padding-top:56px}.ihero-grid{grid-template-columns:1fr;gap:56px;padding-bottom:64px}
 .stack{width:min(340px,86%)}
 .submit{grid-template-columns:1fr;gap:36px}
 .ifoot .right{text-align:left}.ifoot .social{justify-content:flex-start}
}
@media (max-width:600px){
 .top-cta .ig-mini{display:none}
 .wall{grid-template-columns:1fr 1fr;grid-auto-rows:92px;gap:10px}
 .tile.wide{grid-column:span 2}
 .tile .wm{font-size:4rem}
 .tile .cap{font-size:.76rem}.tile figcaption{padding:10px}
 .tile .meta{font-size:.64rem}
 .tile .badge.feat{top:38px;left:12px;right:auto}
 .tile.q blockquote{font-size:.95rem;padding:4px 14px}
 .tile .dur{bottom:50px}
 .steps{grid-template-columns:1fr}
 .row2{grid-template-columns:1fr}
 .sform{padding:22px}
 .igcard{flex-wrap:wrap}.igcard .follow{margin-left:88px}
 .hashchip{right:-2%;font-size:.74rem}
}
@media (max-width:600px){.tile.q.sq .tag{display:none}.spots{grid-auto-columns:minmax(250px,82%)}}
/* live form */
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.upl .drop{cursor:pointer;position:relative}
.upl input[type=file]{margin-top:10px;max-width:100%;color:#cfcbe6;font:500 .8rem "Montserrat",sans-serif;text-transform:none;letter-spacing:0}
.upl input[type=file]::file-selector-button{font:700 .66rem "Montserrat",sans-serif;letter-spacing:.16em;text-transform:uppercase;background:var(--crimson);color:#fff;border:0;border-radius:99px;padding:10px 14px;margin-right:10px;cursor:pointer}
.file-msg{font-size:.78rem;color:#ff9cc8;text-transform:none;letter-spacing:0;font-weight:500;min-height:1em}
.note.agree a,.submit-copy .note a,.ifoot .fine a{color:#fff;text-decoration:underline;text-underline-offset:3px}
/* simple pages (thanks, terms) */
.page{min-height:70vh;padding:90px 0;background:radial-gradient(55% 70% at 8% 0%,rgba(123,47,247,.3),transparent 70%),radial-gradient(50% 60% at 100% 100%,rgba(255,46,136,.32),transparent 70%),var(--ink)}
.page .box{max-width:760px;margin:0 auto}
.page h1{font-size:clamp(2.2rem,6vw,4rem);font-weight:900;line-height:1;margin:14px 0 18px;letter-spacing:-.02em}
.page h1 em{font-style:normal;font-weight:300;color:var(--crimson)}
.page .lead{margin-bottom:28px}
.page .ctas{display:flex;gap:14px;flex-wrap:wrap}
.thanks{text-align:center}.thanks .box img.icon{width:120px;border-radius:50%;margin:0 auto 10px;box-shadow:0 0 0 4px var(--ink),0 0 0 6px var(--crimson)}
.thanks .ctas{justify-content:center}.thanks .lead{margin-left:auto;margin-right:auto}
.terms h2{font-size:1.15rem;font-weight:800;margin:30px 0 8px;letter-spacing:0}
.terms p,.terms li{color:#d6d2ec;font-size:.98rem}
.terms ul{padding-left:20px;display:grid;gap:8px}
.terms .updated{color:var(--muted);font-size:.82rem}
