/* Kane O'Brien — global styles & responsive rules */
body{margin:0;background:#f4f2ec}
html,body,*,*::before,*::after{cursor:url('cursor-slate.png') 10 16, auto !important}
html:active,body:active,*:active,a:active,span:active,div:active,img:active,iframe:active{cursor:url('cursor-slate-snap.png') 10 16, auto !important}
a,span,div,img,button,iframe,input,textarea{cursor:url('cursor-slate.png') 10 16, auto !important}
a{color:#14140f;text-decoration:none}
a:hover{color:#8f1220}
@keyframes kob-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes kob-shake{0%,100%{transform:translate(0,0)}25%{transform:translate(.6px,-.4px)}50%{transform:translate(-.4px,.6px)}75%{transform:translate(.5px,.3px)}}
@keyframes kob-flicker{0%{opacity:.42}12%{opacity:.72}23%{opacity:.34}38%{opacity:.66}47%{opacity:.5}61%{opacity:.8}74%{opacity:.4}88%{opacity:.62}100%{opacity:.42}}
@keyframes kob-glow{0%,100%{opacity:.96;filter:drop-shadow(0 0 5px rgba(252,250,244,.5))}50%{opacity:1;filter:drop-shadow(0 0 11px rgba(252,250,244,.78))}}
@keyframes kob-reel{from{transform:rotate(0)}to{transform:rotate(360deg)}}
/* ---------- Responsive: phones & small tablets ---------- */
.kob-burger{display:none}
@media (max-width:820px){
  /* Nav: collapse horizontal menu into a tap-open dropdown */
  .kob-navlinks{position:absolute;top:calc(100% + 6px);right:10px;flex-direction:column;align-items:stretch !important;gap:0 !important;background:#14140f;padding:8px;min-width:212px;border-radius:6px;box-shadow:0 16px 46px rgba(0,0,0,.45);display:none !important}
  .kob-navlinks.open{display:flex !important}
  .kob-navlinks > span,.kob-navlinks > a{color:#f4f2ec !important;padding:0 14px !important;min-height:46px;display:flex !important;align-items:center;font-size:13px !important;letter-spacing:1.6px !important}
  .kob-navlinks > a > svg{width:19px;height:19px}
  .kob-burger{display:flex !important}
  /* Layout containers collapse to a single column */
  .kob-col{grid-template-columns:1fr !important}
  .kob-cvcols{columns:1 !important;grid-column:auto !important}
  .kob-cvlabel{position:static !important}
  .kob-colauto{grid-column:auto !important}
  /* Tighter padding on narrow screens */
  .kob-wrap{padding-left:18px !important;padding-right:18px !important;padding-top:92px !important}
  .kob-foot{padding-left:18px !important;padding-right:18px !important}
  .kob-pink{padding:22px 20px !important}
  /* Hero category tiles -> stacked, tap-sized */
  .kob-tiles{grid-template-columns:1fr !important}
  .kob-tiles > div{border-right:none !important;border-bottom:1px solid rgba(255,255,255,.35);min-height:54px}
  .kob-tiles > div span:first-child{font-size:23px !important}
  /* Hero floating caption -> readable band under the name */
  .kob-herocap{left:16px !important;right:16px !important;top:0 !important;bottom:auto !important;width:auto !important;text-align:center !important}
  .kob-herocaptext{font-size:12.5px !important}
  /* Hero footer meta + laurels fit the frame */
  .kob-herometa{left:16px !important;right:16px !important}
  .kob-laurels{transform:scale(.84);transform-origin:top left}
}
