/* ==========================================================
   FEARTICKET — Page-specific styles: home.html
   Shared rules live in common.css.
   ========================================================== */

.hero{padding:36px 0 0; position:relative;}

.hero .hero-spacer{margin:0 0 36px;}

.ticket-main .eyebrow{color:var(--ember-dim); margin-bottom:18px;}

.whatsnew{background:var(--ink2); padding-top:88px; padding-bottom:88px;}

#flexibility{background:var(--paper); color:var(--text-ink);}

#flexibility h2{color:var(--ink);}

#flexibility .check-list li{color:#5b5349;}

.rule-visual{background:var(--ink2); border:1px solid rgba(244,236,220,0.14); border-radius:10px;
    overflow:hidden; box-shadow:0 34px 70px -30px rgba(0,0,0,0.4);}

.cap-cloud{background:#fff; border:1px solid var(--paper-line); border-radius:14px;
    padding:30px 26px 32px; box-shadow:0 28px 60px -34px rgba(30,20,10,0.3);}

.cap-cloud-label{display:block; text-align:center; font-family:'IBM Plex Mono',monospace; font-size:11px;
    letter-spacing:0.08em; text-transform:uppercase; color:#8a7f70;
    padding-bottom:22px; margin-bottom:24px; border-bottom:1px dashed var(--paper-line);}

.cap-cloud-tags{display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:9px;}

.cap-tag{font-family:'Space Grotesk',sans-serif; border-radius:20px; white-space:nowrap;
    border:1px solid var(--paper-line); background:#FAF6EC; color:#5b5349;
    transition:border-color .15s, color .15s, background .15s;}

.cap-tag:hover{border-color:var(--ember); color:var(--ember-dim); background:#fff;}

.cap-tag.t1{font-size:15px; font-weight:700; padding:10px 18px; color:var(--ink); border-color:#C9B98A;}

.cap-tag.t2{font-size:13.5px; font-weight:600; padding:8px 15px; color:#4A423C;}

.cap-tag.t3{font-size:12.5px; font-weight:500; padding:7px 13px;}

@media (max-width:600px){
    .cap-cloud{padding:24px 18px 26px;}
    .cap-cloud-tags{gap:7px;}
    .cap-tag.t1{font-size:13.5px; padding:8px 14px;}
    .cap-tag.t2{font-size:12.5px; padding:7px 12px;}
    .cap-tag.t3{font-size:12px; padding:6px 11px;}
  }

.support247-grid{display:grid; grid-template-columns:260px 1fr; gap:60px; align-items:center;}

.s247-badge-wrap{position:relative; display:flex; align-items:center; justify-content:center; height:260px;}

.s247-glow{position:absolute; inset:0; border-radius:50%;
    background:radial-gradient(circle, rgba(232,93,47,0.28) 0%, rgba(232,93,47,0.1) 45%, transparent 72%);}

.s247-badge{position:relative; width:170px; height:170px; border-radius:50%; background:var(--paper);
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    box-shadow:0 0 60px rgba(232,93,47,0.35), 0 20px 50px -15px rgba(0,0,0,0.6);}

.s247-num{font-family:'Big Shoulders Display',sans-serif; font-weight:900; font-size:48px; color:var(--ink); line-height:1;}

.s247-div{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:18px; color:var(--ink); margin-top:2px;}

.s247-content .eyebrow{color:var(--ember);}

.s247-content h2{margin:14px 0 16px; font-size:clamp(26px,3.6vw,40px);}

.s247-content > p{font-size:16px; color:var(--fog); line-height:1.6; max-width:640px; margin:0;}

.s247-quote{margin:26px 0 0; padding-left:20px; border-left:3px solid var(--ember);}

.s247-quote p{font-size:17px; color:var(--paper); line-height:1.5; margin:0 0 10px; font-style:normal;}

.s247-quote cite{font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:0.04em; color:var(--fog-dim); font-style:normal; text-transform:uppercase; display:block;}

.trusted-band{background:var(--ink2); padding:44px 0; border-top:1px solid rgba(244,236,220,0.08); border-bottom:1px solid rgba(244,236,220,0.08);}

.client-logos{margin-top:0; padding-top:0;}

.cl-kicker{display:block; text-align:center; font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:0.1em; text-transform:uppercase; color:var(--fog); margin-bottom:28px;}

.cl-slider{overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);}

.cl-track{display:flex; align-items:center; gap:26px; width:max-content; animation:clScroll 36s linear infinite;}

.cl-slider:hover .cl-track{animation-play-state:paused;}

@keyframes clScroll{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

.cl-logo{display:flex; align-items:center; justify-content:center;
  padding:16px 22px; background:transparent; border:1px solid rgba(244,236,220,0.16); border-radius:8px;
  flex-shrink:0; transition:border-color .2s, box-shadow .2s;}

.cl-logo:hover{border-color:rgba(232,93,47,0.45); box-shadow:none;}

.cl-logo img{height:46px; width:auto; max-width:170px; object-fit:contain;}

@media (prefers-reduced-motion: reduce){
  .cl-track{animation:none;}
}

@media (max-width: 980px){
    .nav-links{display:none;}
    .nav-cta{display:none;}
    .menu-toggle{display:block;}
    .mobile-nav{
      display:block;
      position:fixed; top:64px; right:-100%; width:100%; bottom:0;
      background:var(--ink);
      padding:8px 28px 40px;
      overflow-y:auto;
      transition:right .28s ease;
      z-index:99;
      border-top:1px solid rgba(244,236,220,0.1);
    }
    .mobile-nav.open{right:0;}
    .mobile-nav ul{list-style:none; margin:0; padding:20px 0; display:flex; flex-direction:column; gap:4px;}
    .mobile-nav > ul > li > a{display:block; padding:14px 0; font-size:17px; color:var(--paper); text-decoration:none; border-bottom:1px solid rgba(244,236,220,0.08);}
    .mnav-group{padding:14px 0; border-bottom:1px solid rgba(244,236,220,0.08);}
    .mnav-label{display:block; font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:0.1em; text-transform:uppercase; color:var(--fog-dim); margin-bottom:10px;}
    .mnav-group a{display:block; padding:9px 0 9px 4px; font-size:15px; color:var(--fog); text-decoration:none; border-left:2px solid rgba(244,236,220,0.15); padding-left:14px; margin-bottom:2px;}
    .mnav-group a:last-child{margin-bottom:0;}
    .mobile-nav .btn{width:100%; justify-content:center; margin-top:18px;}
    .ticket{grid-template-columns:1fr;}
    
    .ticket-stub{border-left:none; border-top:2px dashed var(--paper-line); padding:40px 30px;}
    .ticket-stub::before, .ticket-stub::after{left:50%; transform:translateX(-50%);}
    .ticket-stub::before{top:-14px;} .ticket-stub::after{bottom:-14px; top:auto;}
    .feature-grid{grid-template-columns:repeat(2,1fr);}
    .receipt-wrap{grid-template-columns:1fr;}
    .flex-section{grid-template-columns:1fr;}
    .industry-grid{
      grid-template-columns:1fr 1fr; grid-template-rows:none;
      grid-template-areas:"feat feat" "a b" "c d";
    }
    .industry-card{min-height:200px;}
    .industry-card.featured{min-height:280px;}
    .growth-grid{grid-template-columns:1fr;}
    .support247-grid{grid-template-columns:1fr; text-align:center; justify-items:center;}
    .s247-quote{text-align:left;}
    .stub-row{grid-template-columns:1fr;}
    .foot-grid{grid-template-columns:1fr 1fr;}
    .stub-admit{display:none;}
  }

@media (max-width: 600px){
    .feature-grid{grid-template-columns:1fr;}
    .ticket-main{padding:40px 24px 30px;}
    .ticket-stub{padding:34px 24px;}
    .ticket-foot{padding:16px 24px;}
    .foot-grid{grid-template-columns:1fr;}
    .industry-grid{grid-template-columns:1fr; grid-template-areas:"feat" "a" "b" "c" "d";}
    .industry-card, .industry-card.featured{min-height:220px;}
    .cl-track{gap:16px;}
    .cl-logo{padding:13px 18px;}
    .cl-logo img{height:38px; max-width:140px;}
  }
