/* KIFT GARDEN · Shared visual identity · Orange Nightlife PRO */
:root{
  --bg:#09090b; --panel:#19171b; --panel2:#211c1c; --line:#55413380;
  --text:#fff8f1; --muted:#b9aaa1; --orange:#ff6a1a; --amber:#ffc06d;
  --radius:24px; --nav-h:74px;
  --font-body:'Manrope',Arial,sans-serif;
  --font-display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;
}
html{background:var(--bg); overflow-x:clip}
body{font-family:var(--font-body);background:radial-gradient(ellipse at 95% -10%,#81300e29,transparent 38%),#09090b; overflow-x:clip; letter-spacing:.005em}
.app,main,.page,.section,.hero,.event,.feature,.photogrid,.featuregrid,.banner,.form{min-width:0}
button,input,textarea,select{font-family:var(--font-body)}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #ffbe6c;outline-offset:3px}
.brandname,.hero h1,.pagetitle,.secthead h2,.feature strong,.event strong,.banner strong,.modalcard h2{
  font-family:var(--font-display);font-weight:800;letter-spacing:.015em;
}
.brandname{font-size:24px;line-height:.95;letter-spacing:.085em}
.brandline{font-size:9px;letter-spacing:.27em;color:#ffbe73}
.brandmark{border-radius:14px;background:linear-gradient(145deg,#713414,#25130f 48%,#100d10);box-shadow:inset 0 1px 1px #ffd0a24d,0 8px 20px #0006,0 0 22px #ff73151c;border-color:#c36b3670;transform:perspective(160px) rotateY(-6deg)}
.topbar{border-bottom-color:#c57e442b}
.eyebrow{letter-spacing:.24em;color:#ffc17b}
.hero{background:radial-gradient(ellipse at 82% 14%,#ff9b39b3 0%,#cc4a2470 19%,transparent 48%),radial-gradient(ellipse at 0% 100%,#90330b80 0%,transparent 50%),linear-gradient(140deg,#3e1b0c,#171318 51%,#08080a);box-shadow:inset 0 1px #ffc28b35,inset 0 -1px #000a,0 24px 58px #0008,0 0 50px #e45a1714;border-color:#b3644077}
.hero::before{opacity:.38;background:repeating-linear-gradient(115deg,transparent 0 35px,#ffc48f15 36px 37px,transparent 38px 100px)}
.hero::after{border-color:#ffc06c8c;box-shadow:0 0 0 26px #ff9e2810,0 0 0 61px #ff9e2809,0 0 55px #ff701233}
.hero h1{font-size:clamp(44px,9vw,78px);line-height:.95;letter-spacing:.005em;text-wrap:balance}
.hero h1 span{background-image:linear-gradient(125deg,#fff0d0 6%,#ffad5c 43%,#ff6a1a 94%)}
.hero p{color:#f0dacc;font-size:13px;line-height:1.75}
.hero-pill{letter-spacing:.14em;border-color:#ffc17b55;box-shadow:inset 0 1px #fff2}
.primary{font-weight:800;border:1px solid #ffd08b85;background:linear-gradient(130deg,#ff7b28,#f15c13 48%,#ffae50 100%);box-shadow:inset 0 1px #fff5,0 6px 0 #87350970,0 16px 28px #d94b2136;text-shadow:0 1px #ffd7a555;transition:transform .22s ease,filter .22s ease,box-shadow .22s ease;transform:translateY(0)}
.primary:hover{filter:brightness(1.08);box-shadow:inset 0 1px #fff5,0 9px 0 #87350960,0 20px 38px #d94b2155;transform:translateY(-3px)}
.primary:active{transform:translateY(2px);box-shadow:inset 0 1px #fff3,0 2px 0 #87350970}
.secthead h2,.pagetitle{font-size:clamp(30px,4vw,46px);line-height:1.03;letter-spacing:.015em}
.feature{position:relative;overflow:hidden;isolation:isolate;border:1px solid #8e5b3c62;background:linear-gradient(145deg,#2f2421,#201a1c 55%,#121216);box-shadow:inset 0 1px #ffd0a118,0 10px 24px #0005;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.feature::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 100% 0%,#ff9a3430,transparent 67%);z-index:-1}
.feature:hover{border-color:#ffab6899;transform:translateY(-4px);box-shadow:inset 0 1px #ffe0bd40,0 18px 27px #0007,0 0 28px #fb752118}
.feature svg{color:#ff963e;filter:drop-shadow(0 3px 9px #fa671c60)}
.feature strong{font-size:20px;line-height:1.05;letter-spacing:.025em}
.feature small{color:#c5b6b0}
.banner{background:linear-gradient(115deg,#693318,#301d1a 58%,#181419);border-color:#bd794861;box-shadow:inset 0 1px #ffcda425,0 15px 28px #0003}
.banner strong{font-size:22px}
.tag{color:#ffba72}.event{background:linear-gradient(140deg,#2b211e,#181619 75%);border-color:#79543a80;box-shadow:inset 0 1px #ffd1a013,0 12px 26px #0004}
.event strong{font-size:23px;line-height:1.05}.datebox{box-shadow:inset 0 1px #ffcf9c32,0 7px 15px #0003}
.photo{box-shadow:inset 0 1px #ffca962f,0 12px 26px #0006}.photo span{font-family:var(--font-display);font-size:24px;letter-spacing:.025em}
.chip{transition:filter .2s ease,transform .2s ease}.chip:hover{filter:brightness(1.2)}
.chip.active{background:linear-gradient(120deg,#f86b21,#ffc06d);box-shadow:0 5px 16px #f56b232e}
.form .field input,.form .field select,.form .field textarea{border-color:#76513a7a;background:linear-gradient(115deg,#242022,#1b1a20)}
.form .field label{font-weight:800}
.info,.notice{overflow-wrap:anywhere}
.pageintro{font-size:14px;max-width:770px}
.modalcard{background:linear-gradient(140deg,#30231e,#19171d);border-color:#c27b4991;box-shadow:0 25px 75px #0009}
.modalcard h2{font-size:31px}
@media(prefers-reduced-motion:reduce){.primary,.feature,.chip{transition:none!important;transform:none!important}}


/* v4 · event cards: independent label, title and body with responsive spacing */
.event[hidden]{display:none!important}
.event > div:last-child{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px}
.event .tag{display:block;width:100%;min-width:0;margin:0;line-height:1.45;letter-spacing:.12em;overflow-wrap:anywhere}
.event strong{display:block;width:100%;max-width:100%;margin:0;line-height:1.12;overflow-wrap:anywhere}
.event p{display:block;width:100%;margin:0;line-height:1.6;overflow-wrap:anywhere}
.eventlist{align-items:stretch}
.event{min-width:0;min-height:146px;align-items:center}
.event .datebox{align-self:center}
@media(max-width:767px){
  .event{min-height:120px}
  .event > div:last-child{gap:6px}
  .event .tag{font-size:9px;line-height:1.4}
  .event strong{font-size:clamp(19px,5.3vw,23px);line-height:1.1}
  .event p{font-size:11px;line-height:1.5}
}
