/* Hiring pages retain Raincoat's original palette and illustrations. */
.hero{height:auto;min-height:650px;align-items:stretch;background:#25221d url('poster.jpg') 75% 48% / cover no-repeat;padding:145px max(24px,calc((100vw - 1120px)/2)) 96px}
.hero video{object-position:75% center}
.hero::after{background:linear-gradient(90deg,rgba(25,24,21,.97) 0%,rgba(25,24,21,.92) 36%,rgba(25,24,21,.5) 72%,rgba(25,24,21,.2)),linear-gradient(0deg,#25221d,transparent 35%)}
.hero-content{text-align:left;padding:0;max-width:690px}
.hero h1{font-size:clamp(34px,4vw,58px);line-height:1.13;letter-spacing:-.055em;color:#f0e8cd;max-width:680px;overflow-wrap:normal}
.hero h1,.hero p,.hero .cta,.hero .cta-row,.hero .role,.hero .sub{opacity:1;transform:none;animation:none}
.hero .identity{font-family:ui-monospace,monospace;color:#e4b486;font-size:13px;letter-spacing:.09em;margin:0 0 24px;text-transform:uppercase}
.hero .sub{color:#d4d0bf;max-width:550px;font-size:18px;line-height:1.7;margin-top:24px;text-shadow:none}
.hero .availability{display:flex;align-items:center;gap:10px;color:#d4d0bf;font-size:13px;margin-top:23px;max-width:550px}
.availability::before{content:'';width:7px;height:7px;flex-shrink:0;border-radius:50%;background:#b5c59c;box-shadow:0 0 0 5px rgba(181,197,156,.1)}
.hero .cta-row{justify-content:flex-start;gap:12px;margin-top:29px}
.hero .cta{margin-top:0;padding:12px 23px;font-size:14px;min-height:46px;text-shadow:none}
.hero .cta.primary{background:var(--amber);color:var(--charcoal);font-weight:600}
.hero .cta::before{display:none}
.hero .cta:hover{background:#edbb8c;color:#25221d}
.hero .quick-contact{font-size:14px;margin-top:20px}
.quick-contact a{color:#d4d0bf;text-underline-offset:4px}
.motion-toggle{position:absolute;right:24px;bottom:24px;z-index:3;color:#eee5c9;background:#25221de6;border:1px solid #8c8068;border-radius:24px;min-height:44px;padding:8px 16px;font:inherit;font-size:12px;cursor:pointer}
.motion-toggle[hidden]{display:none}
section{max-width:1168px;padding:78px 24px}
.section-label{color:#d9a26e;font-size:12px;letter-spacing:.18em}
.section-intro{color:#bbb9a2;max-width:650px;font-size:17px;margin:16px 0 30px}
.section-top{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}
.section-top h2{margin:0}
.section-top a,.text-link{color:#e4b486;text-underline-offset:5px;font-size:14px}
.selected-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.selected-card{display:flex;flex-direction:column;min-width:0;background:#302b24;border:1px solid #514838;border-radius:16px;overflow:hidden}
.selected-image{display:block;width:100%;height:185px;object-fit:cover;object-position:top;border-bottom:1px solid #514838;background:#28251f}
.selected-body{padding:24px;display:flex;flex-direction:column;flex:1}
.selected-meta{color:#c9ac8a;font:11px ui-monospace,monospace;letter-spacing:.05em;margin-bottom:16px;line-height:1.6}
.selected-card h3{font-size:22px;color:#f0e8cd;font-weight:500;letter-spacing:-.02em;line-height:1.2}
.selected-card p{color:#c7c3ae;font-size:15px;line-height:1.65;margin-top:14px}
.selected-card .case-detail{font-size:13px;color:#aeb49a;padding-top:16px;border-top:1px solid #514838;margin-top:20px}
.case-links{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:auto;padding-top:23px}
.case-links a{color:#e4b486;font-size:14px;text-decoration:none;padding:9px 0;min-height:44px}
.case-links a:first-child{font-weight:600}
.case-links a:hover{text-decoration:underline;text-underline-offset:5px}
.evidence-note{color:#b9b6a1;font-size:13px;max-width:750px;margin-top:24px}
.project-showcase{display:grid;gap:34px;margin-top:34px}
.project-lane{min-width:0}
.project-lane-label{margin:0 0 13px;color:#d9a26e;font:600 13px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase}
.project-strip{
  position:relative;
  width:min(100vw,1440px);
  margin-left:50%;
  transform:translateX(-50%);
  overflow:hidden;
  padding:4px 0 12px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.project-track{display:flex;width:max-content;will-change:transform}
.project-track.forward{animation:featured-forward 46s linear infinite}
.project-track.reverse{animation:featured-reverse 52s linear infinite}
.project-strip:hover .project-track,.project-strip:focus-within .project-track{animation-play-state:paused}
.project-set{display:flex;gap:16px;padding-right:16px}
.project-tile{
  flex:0 0 304px;
  display:grid;
  grid-template-rows:171px auto;
  overflow:hidden;
  color:#f0e8cd;
  text-decoration:none;
  background:#302b24;
  border:1px solid #514838;
  border-radius:16px;
  box-shadow:0 16px 34px rgba(15,13,11,.18);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.project-tile:hover{transform:translateY(-5px);border-color:#d9a26e;box-shadow:0 20px 44px rgba(15,13,11,.32)}
.project-tile:focus-visible{outline:3px solid #f0c08f;outline-offset:4px;border-color:#f0c08f}
.project-tile-media{position:relative;overflow:hidden;background:#211e19;border-bottom:1px solid #514838}
.project-tile-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.project-art{background-image:var(--project-art);background-size:200% 200%;background-position:var(--project-art-x,0%) var(--project-art-y,0%)}
.project-art.utility{background-size:200% 100%}
.project-tile-copy{display:grid;grid-template-columns:1fr auto;gap:5px 16px;align-items:end;padding:17px 18px 18px}
.project-tile strong{font-size:18px;line-height:1.18;font-weight:600;letter-spacing:-.02em}
.project-tile-type{grid-column:1/-1;color:#c9ac8a;font:11px ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}
.project-tile-action{color:#d9a26e;font-size:18px;line-height:1}
@keyframes featured-forward{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes featured-reverse{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(max-width:600px){
  .project-showcase{gap:28px;margin-top:28px}
  .project-strip{overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;-webkit-mask-image:none;mask-image:none;padding-left:24px;padding-right:24px}
  .project-track{animation:none!important}
  .project-set[aria-hidden="true"]{display:none}
  .project-tile{flex-basis:min(82vw,276px);grid-template-rows:155px auto;scroll-snap-align:start}
  .project-lane-label{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .project-strip{overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;-webkit-mask-image:none;mask-image:none}
  .project-track{animation:none!important}
  .project-set[aria-hidden="true"]{display:none}
  .project-tile{scroll-snap-align:start;transition:none}
}
.workflow{border-top:1px solid #474033}
.workflow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border:1px solid #514838;background:#514838;border-radius:14px;overflow:hidden;margin-top:32px}
.workflow-step{padding:25px;background:#2b2721}
.workflow-step .num{font:12px ui-monospace,monospace;color:#e4b486}
.workflow-step h3{font-size:17px;color:#eee4c8;margin:15px 0 10px}
.workflow-step p{font-size:14px;color:#c0bda9;line-height:1.7}
.workflow-proof{display:flex;align-items:center;gap:24px;justify-content:space-between;padding:24px 0;border-bottom:1px solid #474033;color:#c0bda9;font-size:14px}
.workflow-proof p{max-width:720px}
.workflow-proof a{flex-shrink:0;color:#e4b486;text-underline-offset:5px}
.more-products{padding-top:28px}
.more-products summary{cursor:pointer;color:#e4b486;font-size:16px;padding:16px 0;min-height:48px}
.more-products .prod-grid{padding-top:20px}
.prod-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.exp-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}
.steps{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.routes{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.reveal{opacity:1;transform:none}
.reveal-words .w{opacity:1;transform:none}
.skills-text{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:22px}
.skills-text h3{font-size:14px;color:#e4b486;margin-bottom:7px}
.skills-text p{font-size:13px;color:#b9b6a1}
.about p{font-size:clamp(19px,2.8vw,29px);max-width:960px}
.contacts .contact-copy{color:#c7c3ae;max-width:620px;margin:20px auto}
.contact-links a{min-height:44px}
.team-intro{border-bottom:1px solid #514838;padding-bottom:38px}
.team-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.team-actions a{display:inline-flex;align-items:center;min-height:46px;padding:11px 20px;color:#e4b486;border:1px solid #8b7053;border-radius:24px;text-decoration:none;font-size:14px}
.team-actions a:first-child{background:#d9a26e;color:#25221d;font-weight:600}
.team-main .proof{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.team-main .proof span{color:#c0bda9}
.team-main .cta-final{padding:28px 20px}
.team-main h1{font-size:clamp(28px,4.7vw,46px);overflow-wrap:anywhere}
.team-main .section-label{margin-bottom:20px}
.team-main .team-note{color:#bbb9a2;font-size:14px;margin-top:20px}
@media(max-width:900px){.hero{min-height:620px;padding-top:130px;background-position:65% center}.hero::after{background:linear-gradient(90deg,rgba(25,24,21,.95),rgba(25,24,21,.65)),linear-gradient(0deg,#25221d,transparent 30%)}.selected-grid{grid-template-columns:1fr}.selected-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.selected-image{height:100%;min-height:240px;object-fit:cover;border-bottom:0;border-right:1px solid #514838}.workflow-grid,.skills-text{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.hero{padding:112px 24px 60px;min-height:0;background-position:65% center}.hero h1{font-size:30px;letter-spacing:-.05em;line-height:1.16}.hero .identity{font-size:11px;margin-bottom:22px;letter-spacing:.04em}.hero .sub{font-size:16px;margin-top:20px}.hero .availability{font-size:12px}.hero .cta-row{gap:10px}.hero .cta{padding:12px 18px;font-size:13px}.hero .quick-contact{font-size:13px}.hero::after{background:linear-gradient(90deg,rgba(25,24,21,.94),rgba(25,24,21,.79)),linear-gradient(0deg,#25221d,transparent 50%)}section{padding:56px 24px}.section-top{display:block}.section-top a{display:inline-block;margin-top:18px}.section-intro{font-size:16px}.selected-card{display:flex}.selected-image{height:165px;min-height:0;border-right:0;border-bottom:1px solid #514838}.selected-body{padding:22px}.workflow-grid{grid-template-columns:1fr}.workflow-step{padding:22px}.workflow-proof{display:block}.workflow-proof a{display:inline-block;margin-top:17px}.skills-text{grid-template-columns:1fr 1fr}.about p{font-size:20px}.team-actions{gap:10px}.team-actions a{font-size:13px;padding:10px 16px}}
@media(max-width:360px){.hero h1{font-size:25px}.skills-text{grid-template-columns:1fr}.hero .cta-row{flex-direction:column;align-items:flex-start}.selected-card h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero video{display:none}.hero *,.selected-card{animation:none!important;transition:none!important}}

/* FloatPlayer illustration, not a product screenshot. */
.floatplayer-cover{display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 65% 20%,#50342c,transparent 65%),#191b1c;padding:28px;box-sizing:border-box}
.floatplayer-window{display:flex;flex-direction:column;width:80%;max-width:290px;height:140px;transform:rotate(-4deg);background:#282a2b;border:1px solid #6f6960;border-radius:12px;box-shadow:16px 20px 0 -6px #171717;overflow:hidden;color:#e1d8b5}
.floatplayer-bar{display:flex;justify-content:space-between;font:12px ui-monospace,monospace;padding:9px 12px;background:#373633}
.floatplayer-play{flex:1;display:grid;place-items:center;color:#e5ad7b;font-size:32px}
.floatplayer-timeline{height:3px;margin:0 12px 12px;background:linear-gradient(to right,#e5ad7b 45%,#5a5550 45%)}
@media(max-width:600px){.floatplayer-cover{width:100%;padding:18px}.floatplayer-window{height:120px}}
