/* Shared-menu column count: template uses inline style="--sq-menu-cols:N"; mirrored via data-cols for the DC runtime. */
.sq-menu__panel[data-cols="3"]{--sq-menu-cols:3}
.sq-menu__panel[data-cols="2"]{--sq-menu-cols:2}
/* Life at SquareShift — page-specific exception CSS.
   Manifest: page-builds/20261003_1600-life-at-squareshift, sections 1–7 = page_specific_exception (Grace direction).
   Depends on css/tokens.css only. Shared chrome CSS is untouched. */

.life-shell{width:var(--shell);margin:0 auto}
.life-section{padding-block:var(--section-padding-y);border-top:1px solid var(--rule);background:var(--paper)}
.life-head{width:var(--title-description-width);max-width:var(--title-description-width);margin-bottom:56px;display:grid;gap:18px}
.life-head h2{color:var(--deep)}
.life-head p{color:var(--grey-mid);max-width:720px}
.life-kicker{color:var(--bronze)}

.life-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:1.5px solid var(--deep);font-family:var(--body);font-size:var(--fs-content-cta);font-weight:700;line-height:1.15;letter-spacing:.1em;text-transform:uppercase;transition:background-color .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}
.life-btn--primary{background:var(--deep);color:#FFFFFF}
.life-btn--primary:hover{background:var(--sage);border-color:var(--sage)}
.life-btn--ghost{color:var(--deep)}
.life-btn--ghost:hover{background:var(--wash);border-color:var(--deep)}
.life-link{display:inline-flex;font-size:var(--fs-content-cta);font-weight:700;line-height:1.15;letter-spacing:.1em;text-transform:uppercase;color:var(--deep);padding-bottom:4px;border-bottom:1px solid var(--gold)}
.life-link:hover{color:var(--bronze)}

/* 1 · life-hero — full-bleed photo carousel + solid ink title band. Text never sits on the photo. Hero exception: own height/padding. */
.life-hero{display:flex;flex-direction:column;background:#181818;color:#FFFFFF}
.life-hero__stage{position:relative;height:min(78vh,860px);min-height:440px;overflow:hidden;background:#181818}
.life-hero__img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 35%;opacity:0;transform:scale(1.05);transition:opacity 1s var(--ease),transform 8s linear}
.life-hero__img.is-active{opacity:1;transform:scale(1)}
.life-hero__band{background:#181818;border-top:3px solid var(--gold)}
.life-hero__bar{display:flex;align-items:flex-start;justify-content:space-between;gap:48px;padding-block:32px 36px}
.life-hero__title{margin:0;font-family:var(--display);font-weight:var(--display-weight);font-size:clamp(32px,4.4vw,58px);line-height:1.15;letter-spacing:0;color:#FFFFFF;text-wrap:balance;width:75%;max-width:75%}
.life-hero__arrows{display:flex;gap:8px;flex:none}
.life-hero__arrow{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border:1px solid rgba(255,255,255,.6);color:#FFFFFF;transition:background-color .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}
.life-hero__arrow:hover{background:var(--gold);border-color:var(--gold);color:#181818}
@media (prefers-reduced-motion:reduce){.life-hero__img{transition:none;transform:none}}
.life-btn--gold{background:var(--gold);border-color:var(--gold);color:#181818}
.life-btn--gold:hover{background:#F3CD29;border-color:#F3CD29}
.life-btn--onphoto{border-color:#FFFFFF;color:#FFFFFF}
.life-btn--onphoto:hover{background:#FFFFFF;color:var(--deep)}

/* 2 · culture-card-grid */
.life-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 28px}
.life-card{display:grid;align-content:start;gap:20px}
.life-card__media{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--wash)}
.life-card__img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.life-card:hover .life-card__img{transform:scale(1.03)}
.life-card__img--crop-work{position:absolute;top:-52%;left:-62%;width:170%;height:170%;max-width:none}
.life-card__img--crop-group{position:absolute;top:-6%;left:-28%;width:160%;height:160%;max-width:none}
.life-card__img--top{object-position:50% 18%}
.life-card__ph{display:flex;flex-direction:column;justify-content:flex-end;gap:6px;width:100%;height:100%;padding:20px;background:var(--sage-04);border:1px dashed #C5B9AB}
.life-card__ph b{font-family:var(--mono);font-size:12px;font-weight:400;line-height:1.3;letter-spacing:.06em;text-transform:uppercase;color:var(--sage)}
.life-card__ph span{font-family:var(--mono);font-size:11px;line-height:1.4;color:var(--grey-mid)}
.life-card__body{display:grid;gap:10px;padding-top:18px;border-top:3px solid var(--gold)}
.life-card__n{font-family:var(--mono);font-size:12px;line-height:1.2;color:var(--bronze)}
.life-card__title{color:var(--grey-dark)}
.life-card__text{color:var(--grey-mid)}
.life-cards--no-ph .life-card--ph .life-card__media{display:none}

/* 4 · awesome-work-amazing-perks */
.life-perks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--rule);border-left:1px solid var(--rule)}
.life-perk{display:grid;align-content:start;gap:14px;padding:34px 38px 38px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--paper);transition:background-color .2s var(--ease)}
.life-perk:hover{background:var(--sage-04)}
.life-perk__icon{width:48px;height:48px;object-fit:contain;margin-bottom:10px}
.life-perk__title{color:var(--deep)}
.life-perk__text{color:var(--grey-mid)}

/* 5 · employee-voices — cream ground */
.life-voices-section{background:var(--wash)}
.life-voices{display:grid;gap:96px}
.life-voice{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:center}
.life-voice--gautaman{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.life-voice--gautaman .life-voice__frame{order:2}
.life-voice__frame{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--paper);border-bottom:6px solid var(--gold)}
.life-voice__portrait{width:100%;height:100%;max-width:none;object-fit:cover;transition:transform .8s var(--ease)}
.life-voice--narmadha .life-voice__portrait{object-position:39% 30%;transform:scale(1.55);transform-origin:39% 26%}
.life-voice--gautaman .life-voice__portrait{object-position:62% 0;transform:scale(1.04);transform-origin:62% 20%}
.life-voice__body{display:grid;gap:24px;align-content:center}
.life-voice__mark{font-family:var(--display);font-size:96px;line-height:1.15;height:64px;color:var(--gold)}
.life-voice__quote{margin:0;font-family:var(--body);font-size:24px;font-weight:300;line-height:1.5;color:var(--grey-dark)}
.life-voice__quote p + p{margin-top:16px}
.life-voice__who{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-top:24px;border-top:1px solid rgba(24,24,24,.14)}
.life-voice__id{display:grid;gap:4px}
.life-voice__name{color:var(--deep)}
.life-voice__role{color:var(--grey-mid)}
.life-stories{margin-top:72px}
.life-stories__head{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:24px}
.life-stories__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.life-story{display:grid;align-content:start;gap:12px;padding:24px 20px;background:var(--paper)}
.life-story__img{width:72px;height:72px;object-fit:cover}
.life-story__name{font-family:var(--display);font-size:20px;line-height:1.15;color:var(--deep)}
.life-story__text{color:var(--grey-mid)}
.life-stories--hidden{display:none}

/* 6 · recent-events-celebrations — colour-block bento; each tile leads to an event page */
.life-events-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(260px,auto));gap:16px}
.life-event{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:16px;padding:32px;color:#FFFFFF;isolation:isolate;transition:transform .35s var(--ease)}
.life-event:hover{transform:translateY(-6px)}
.life-event__glyph{position:absolute;right:-28px;bottom:-40px;z-index:-1;font-size:240px;line-height:1;color:rgba(255,255,255,.16);transform:rotate(-12deg);transition:transform .6s var(--ease)}
.life-event:hover .life-event__glyph{transform:rotate(0deg) scale(1.12)}
.life-event__top{display:flex;align-items:center;gap:14px}
.life-event__n{font-family:var(--mono);font-size:12px;line-height:1.2;padding:4px 8px;border:1px solid currentColor}
.life-event__title{font-family:var(--display);font-weight:400;font-size:32px;line-height:1.15;max-width:12ch;margin-top:auto}
.life-event__more{display:inline-flex;align-items:center;gap:10px;font-size:var(--fs-content-cta);font-weight:700;line-height:1.15;letter-spacing:.1em;text-transform:uppercase}
.life-event__more .material-icons{font-size:18px;transition:transform .25s var(--ease)}
.life-event:hover .life-event__more .material-icons{transform:translateX(6px)}
.life-event--diwali{grid-column:span 2;grid-row:span 2;background:#F3CD29;color:#181818;padding:44px}
.life-event--diwali .life-event__glyph{font-size:480px;right:-60px;bottom:-90px;color:rgba(184,134,11,.28)}
.life-event--diwali .life-event__title{font-size:clamp(44px,4.6vw,64px)}
.life-event--meetup{grid-column:span 2;background:var(--sage)}
.life-event--campus{background:#57473A}
.life-event--launch{background:var(--gold);color:#181818}
.life-event--launch .life-event__glyph{color:rgba(24,24,24,.12)}
.life-event--campus .life-event__title,.life-event--launch .life-event__title{font-size:26px}

/* 7 · careers-handoff — gold wash, two column */
.life-careers{background:var(--gold-10);border-top:1px solid rgba(212,175,55,.38)}
.life-careers__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:end}
.life-careers__copy{display:grid;gap:18px}
.life-careers__copy h2{color:var(--deep)}
.life-careers__copy p{color:var(--grey-dark);max-width:620px}
.life-careers__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}

@media (max-width:1100px){
  .life-voice,.life-voice--gautaman{gap:48px}
  .life-voice__quote{font-size:20px}
  .life-stories__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .life-hero__stage{height:56vh;min-height:320px}
  .life-hero__bar{padding-block:24px 28px;gap:20px}
  .life-hero__title{width:auto;max-width:none}
  .life-event--diwali{padding:32px}
  .life-event--diwali .life-event__glyph{font-size:320px}
  .life-head{width:100%;max-width:100%}
  .life-events-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}
  .life-event{min-height:240px}
  .life-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 24px}
  .life-perks{grid-template-columns:repeat(2,minmax(0,1fr))}
  .life-voices{gap:72px}
  .life-voice,.life-voice--gautaman{grid-template-columns:1fr;gap:32px}
  .life-voice--gautaman .life-voice__frame{order:0}
  .life-voice__frame{max-width:420px}
  .life-careers__grid{grid-template-columns:1fr;gap:32px}
  .life-careers__actions{justify-content:flex-start}
}
@media (max-width:600px){
  .life-cards,.life-perks,.life-events-grid{grid-template-columns:1fr}
  .life-event,.life-event--diwali,.life-event--meetup{grid-column:auto;grid-row:auto}
  .life-perk{padding:28px}
  .life-voice__who{flex-direction:column;align-items:flex-start}
  .life-stories__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .life-stories__head{display:grid}
}
