:root{ --ink:#12161C; --ink-2:#191E26; --amber:#E2A537; --amber-dim:#8C6A28; --teal:#3F6B5D; --parchment:#EDE7D8; --slate:#8B93A1; --red:#D64545; --line:rgba(237,231,216,0.14); --radius:2px; } *{box-sizing:border-box;} html{scroll-behavior:smooth;} body{ margin:0; background:var(--ink); color:var(--parchment); font-family:'Source Serif 4', Georgia, serif; line-height:1.5; } h1,h2,h3,.display{ font-family:'Big Shoulders Display', sans-serif; text-transform:uppercase; letter-spacing:0.01em; margin:0; color:var(--parchment); } .mono{ font-family:'IBM Plex Mono', monospace; letter-spacing:0.08em; text-transform:uppercase; font-size:0.72rem; font-weight:600; } a{color:inherit;} .wrap{max-width:1120px;margin:0 auto;padding:0 28px;} @media (prefers-reduced-motion: reduce){ *{animation:none !important; transition:none !important;} } /* ---------- Top ticker ---------- */ .ticker{ background:var(--ink-2); border-bottom:1px solid var(--line); padding:8px 0; overflow:hidden; white-space:nowrap; } .ticker .wrap{display:flex; justify-content:space-between; align-items:center; gap:16px;} .ticker-phone{color:var(--amber);} .ticker-tag{color:var(--slate);} /* ---------- Header ---------- */ header{ padding:22px 0; border-bottom:1px solid var(--line); } header .wrap{display:flex; align-items:center; justify-content:space-between;} .logo{display:flex; align-items:center; gap:10px;} .logo-mark{ width:11px;height:11px;border-radius:50%; background:var(--red); box-shadow:0 0 0 3px rgba(214,69,69,0.18); animation:pulse-live 2.2s ease-in-out infinite; flex-shrink:0; } @keyframes pulse-live{ 0%,100%{box-shadow:0 0 0 3px rgba(214,69,69,0.18);} 50%{box-shadow:0 0 0 7px rgba(214,69,69,0.06);} } .logo-text{font-family:'Big Shoulders Display'; font-weight:900; font-size:1.35rem; text-transform:uppercase; letter-spacing:0.02em;} .logo-text span{color:var(--amber);} nav{display:flex; gap:28px; align-items:center;} nav a{ font-family:'IBM Plex Mono'; font-size:0.75rem; letter-spacing:0.06em; text-transform:uppercase; text-decoration:none; color:var(--slate); transition:color .2s; } nav a:hover, nav a:focus-visible{color:var(--parchment);} .btn-nav{ border:1px solid var(--amber-dim); padding:9px 16px; color:var(--amber) !important; border-radius:var(--radius); } .btn-nav:hover{background:rgba(226,165,55,0.08);} .menu-toggle{display:none;} /* ---------- Hero ---------- */ .hero{ padding:88px 0 76px; position:relative; border-bottom:1px solid var(--line); overflow:hidden; } .hero .wrap{position:relative; z-index:2;} .hero-label{color:var(--amber); display:flex; align-items:center; gap:8px; margin-bottom:22px;} .hero-label::before{content:''; width:16px; height:1px; background:var(--amber);} .hero h1{ font-size:clamp(2.6rem, 6vw, 4.6rem); font-weight:900; line-height:0.98; max-width:14ch; } .hero h1 em{font-style:normal; color:var(--amber);} .hero-sub{ font-size:1.15rem; color:var(--slate); max-width:52ch; margin:26px 0 34px; } .hero-ctas{display:flex; gap:14px; flex-wrap:wrap; margin-bottom:56px;} .btn-primary, .btn-secondary{ font-family:'IBM Plex Mono'; font-size:0.78rem; letter-spacing:0.06em; text-transform:uppercase; padding:15px 26px; border-radius:var(--radius); text-decoration:none; font-weight:600; display:inline-block; transition:transform .15s ease, background .2s; } .btn-primary{background:var(--amber); color:var(--ink);} .btn-primary:hover{transform:translateY(-2px); background:#EEB44F;} .btn-secondary{border:1px solid var(--line); color:var(--parchment);} .btn-secondary:hover{transform:translateY(-2px); border-color:var(--parchment);} /* ---------- Audio mock player (signature element) ---------- */ .player{ background:var(--ink-2); border:1px solid var(--line); border-radius:4px; padding:20px 22px; max-width:640px; } .player-top{display:flex; align-items:center; gap:14px; margin-bottom:16px;} .play-btn{ width:40px; height:40px; border-radius:50%; background:var(--amber); flex-shrink:0; display:flex; align-items:center; justify-content:center; cursor:pointer; border:none; } .play-btn svg{width:14px; height:14px; fill:var(--ink); margin-left:2px;} .player-meta{overflow:hidden;} .player-title{font-family:'IBM Plex Mono'; font-size:0.78rem; color:var(--parchment); font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;} .player-sub{font-family:'IBM Plex Mono'; font-size:0.68rem; color:var(--slate); margin-top:3px;} .waveform{display:flex; align-items:flex-end; gap:3px; height:44px;} .waveform span{ flex:1; background:var(--amber-dim); border-radius:1px; animation:wave 1.4s ease-in-out infinite; } @keyframes wave{ 0%,100%{height:18%; background:var(--amber-dim);} 50%{height:var(--h,80%); background:var(--amber);} } /* ---------- Section shell ---------- */ section{padding:76px 0; border-bottom:1px solid var(--line);} .section-label{ display:flex; align-items:center; gap:10px; color:var(--teal); margin-bottom:14px; } .section-label::before{content:''; width:7px; height:7px; border-radius:50%; background:var(--teal); flex-shrink:0;} .section-title{font-size:clamp(1.7rem, 3.4vw, 2.5rem); font-weight:700; max-width:18ch; margin-bottom:14px;} .section-intro{color:var(--slate); max-width:56ch; font-size:1.02rem;} /* ---------- Trust strip: APPROVED ---------- */ .approved{background:var(--ink-2);} .badges{ display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-top:36px; } .badge{background:var(--ink-2); padding:26px 20px;} .badge .mono{color:var(--amber); display:block; margin-bottom:10px;} .badge p{margin:0; font-size:0.92rem; color:var(--parchment);} /* ---------- The Rack: offerings ---------- */ .rack-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-top:40px;} .rack-card{background:var(--ink); padding:34px 28px; transition:background .2s;} .rack-card:hover{background:var(--ink-2);} .rack-num{font-family:'IBM Plex Mono'; font-size:0.72rem; color:var(--amber-dim); display:block; margin-bottom:18px;} .rack-card h3{font-size:1.5rem; margin-bottom:10px; color:var(--parchment);} .rack-card p{color:var(--slate); font-size:0.95rem; margin:0 0 18px;} .rack-card a{ font-family:'IBM Plex Mono'; font-size:0.72rem; letter-spacing:0.05em; text-transform:uppercase; color:var(--amber); text-decoration:none; border-bottom:1px solid var(--amber-dim); padding-bottom:2px; } /* ---------- Lineup: packages ---------- */ .lineup-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:40px;} .tier{border:1px solid var(--line); padding:30px 26px; border-radius:4px; position:relative;} .tier.featured{border-color:var(--amber-dim); background:var(--ink-2);} .tier-tag{position:absolute; top:-11px; left:26px; background:var(--amber); color:var(--ink); font-family:'IBM Plex Mono'; font-size:0.65rem; padding:3px 9px; letter-spacing:0.05em;} .tier h3{font-size:1.3rem; margin-bottom:6px;} .tier-price{color:var(--slate); font-family:'IBM Plex Mono'; font-size:0.8rem; margin-bottom:20px; display:block;} .tier ul{list-style:none; padding:0; margin:0;} .tier li{font-size:0.9rem; color:var(--parchment); padding:8px 0; border-top:1px solid var(--line);} .tier li:first-child{border-top:none;} /* ---------- Playback: testimonial ---------- */ .playback blockquote{ font-size:clamp(1.4rem, 3vw, 2rem); font-weight:400; margin:32px 0 20px; max-width:26ch; line-height:1.35; } .playback cite{font-family:'IBM Plex Mono'; font-style:normal; font-size:0.78rem; color:var(--amber); text-transform:uppercase; letter-spacing:0.05em;} .placeholder-note{color:var(--slate); font-size:0.8rem; margin-top:10px; font-family:'IBM Plex Mono';} /* ---------- Cue: final CTA ---------- */ .cue{border-bottom:none; text-align:center; padding:96px 0;} .cue h2{font-size:clamp(2.2rem,5vw,3.4rem); margin-bottom:20px;} .cue-phone{font-family:'IBM Plex Mono'; font-size:1.3rem; color:var(--amber); display:block; margin:26px 0 34px; text-decoration:none;} footer{padding:32px 0; text-align:center;} footer p{font-family:'IBM Plex Mono'; font-size:0.7rem; color:var(--slate); margin:0;} @media (max-width:860px){ .badges{grid-template-columns:repeat(2,1fr);} .rack-grid{grid-template-columns:1fr;} .lineup-grid{grid-template-columns:1fr;} nav{gap:16px;} } @media (max-width:600px){ .badges{grid-template-columns:1fr;} nav .nav-links{display:none;} .hero{padding:64px 0 52px;} }