/* =============================================================================
   tf-salient-architect - "Tekta" (LIKENESS MODE mirror of Salient/Architect demo)
   Editorial monochrome architecture portfolio. Gantari 600 + Libre Franklin 300/400.
   Original CSS. IP guardrail: repos/theme-forge/README.md
   ============================================================================= */

/* ---- fonts ---- */
@font-face{font-family:"Gantari";src:url("../fonts/gantari-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Libre Franklin";src:url("../fonts/libre-franklin-300.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Libre Franklin";src:url("../fonts/libre-franklin-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

/* ---- tokens ---- */
:root{
  --ink:#101012;        /* near-black */
  --paper:#FFFFFF;
  --gray:#F1F1EF;       /* light panel */
  --slate:#333A44;      /* cool dark accent text */
  --crimson:#D93A47;    /* whisper accent - focus/skip only */
  --peri:#AFC4EA;       /* closer sky */
  --wash:#DEE8F8;       /* keyword highlight */
  --line:#E4E4E1;       /* hairline */
  --muted:#6B6E73;      /* eyebrow/meta gray */
  --disp:"Gantari",system-ui,sans-serif;
  --body:"Libre Franklin",system-ui,sans-serif;
  --gut:86px;
  --maxw:1268px;
  --e:cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--body);font-weight:400;font-size:17px;line-height:1.55;color:var(--ink);background:var(--paper);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;font-weight:400;letter-spacing:-.01em}
p{margin:0}
.skip{position:absolute;left:-999px;top:0;background:var(--crimson);color:#fff;padding:10px 16px;z-index:9999}
.skip:focus{left:12px;top:12px}
:focus-visible{outline:2px solid var(--crimson);outline-offset:3px}

/* ---- containers ---- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut)}
.wrap--wide{max-width:none;padding:0 var(--gut)}

/* ---- type helpers ---- */
.eyebrow{font-size:13px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 22px}
.h1{font-family:var(--disp);font-weight:600;font-size:clamp(58px,9vw,129.6px);line-height:1.02;letter-spacing:-.03em}
.h2{font-family:var(--body);font-weight:300;font-size:clamp(30px,3.4vw,43.2px);line-height:1.1;letter-spacing:-.03em}
.lead{font-size:17px;line-height:1.62;color:#3a3c40}

/* =============================================================================
   HEADER
   ============================================================================= */
.header{position:fixed;top:0;left:0;right:0;z-index:200;height:84px;display:flex;align-items:center;
  transition:background .35s var(--e);opacity:0;transform:translateY(-14px)}
html.ready .header{opacity:1;transform:none;transition:opacity .7s var(--e),transform .7s var(--e),background .35s var(--e)}
.header__in{width:100%;max-width:none;margin:0;padding:0 28px;display:flex;align-items:center}
.brand{font-family:var(--disp);font-weight:600;font-size:28px;letter-spacing:-.02em;line-height:1;color:var(--ink);transition:color .35s var(--e)}
.header--hero .brand{color:#fff}
.header__right{margin-left:auto;display:flex;align-items:center;gap:16px}
.phonebtn{display:inline-flex;align-items:center;gap:9px;height:44px;padding:0 20px;border-radius:999px;background:#fff;color:var(--ink);
  font-size:15px;font-weight:400;box-shadow:0 6px 20px rgba(0,0,0,.09);transition:transform .3s var(--e)}
.phonebtn svg{width:15px;height:15px}
.phonebtn:hover{transform:translateY(-2px)}
.burger{width:44px;height:44px;border-radius:999px;background:var(--ink);border:0;cursor:pointer;display:grid;place-items:center;padding:0;transition:transform .3s var(--e)}
.burger span{display:block;width:16px;height:1.5px;background:#fff;margin:2.5px 0;transition:.3s var(--e)}
.burger:hover{transform:scale(1.06)}

/* =============================================================================
   OFF-CANVAS MENU (from right, visibility-toggled)
   ============================================================================= */
.offcanvas{position:fixed;inset:0;z-index:400;visibility:hidden;pointer-events:none}
.offcanvas__scrim{position:absolute;inset:0;background:rgba(10,10,12,.55);opacity:0;transition:opacity .5s var(--e)}
.offcanvas__panel{position:absolute;top:0;right:0;height:100%;width:480px;max-width:88vw;background:#0A0A0C;
  transform:translateX(100%);transition:transform .6s var(--e);display:flex;flex-direction:column;justify-content:center;padding:0 64px}
.offcanvas.open{visibility:visible;pointer-events:auto}
.offcanvas.open .offcanvas__scrim{opacity:1}
.offcanvas.open .offcanvas__panel{transform:none}
.offcanvas__close{position:absolute;top:50%;left:-27px;transform:translateY(-50%);width:54px;height:54px;border-radius:999px;
  background:#0A0A0C;border:1.5px solid rgba(255,255,255,.28);color:#fff;cursor:pointer;display:grid;place-items:center}
.offcanvas__close svg{width:20px;height:20px}
.offcanvas__nav{display:flex;flex-direction:column;gap:2px}
.offcanvas__nav a{font-family:var(--body);font-weight:300;font-size:54px;line-height:1.28;color:#fff;letter-spacing:-.02em;width:max-content;
  opacity:0;transform:translateX(24px);transition:opacity .5s var(--e),transform .5s var(--e)}
.offcanvas.open .offcanvas__nav a{opacity:1;transform:none}
.offcanvas.open .offcanvas__nav a:nth-child(1){transition-delay:.14s}
.offcanvas.open .offcanvas__nav a:nth-child(2){transition-delay:.2s}
.offcanvas.open .offcanvas__nav a:nth-child(3){transition-delay:.26s}
.offcanvas.open .offcanvas__nav a:nth-child(4){transition-delay:.32s}
.offcanvas__nav a[aria-current]{text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:1px}
.offcanvas__meta{position:absolute;bottom:44px;left:64px;right:64px;color:rgba(255,255,255,.5);font-size:14px;line-height:1.8}
.offcanvas__meta a{color:rgba(255,255,255,.72)}
body.menu-open{overflow:hidden}

/* =============================================================================
   BUTTONS + CHIPS
   ============================================================================= */
.btn{display:inline-flex;align-items:center;gap:16px;height:52px;padding:0 26px;border-radius:999px;border:1px solid var(--line);
  background:#fff;color:var(--ink);font-size:16px;font-weight:400;cursor:pointer;transition:border-color .3s var(--e),background .3s var(--e)}
.btn .dash{width:22px;height:1.5px;background:currentColor;flex:none}
.btn:hover{border-color:var(--ink)}
.chip{display:inline-flex;align-items:center;height:38px;padding:0 20px;border-radius:999px;border:1px solid var(--line);
  font-size:13px;letter-spacing:.04em;color:var(--slate)}
.chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}

/* =============================================================================
   REVEAL / PARALLAX
   ============================================================================= */
.reveal{opacity:0;transform:translateY(75px);transition:opacity .8s var(--e),transform .8s var(--e)}
.reveal.in{opacity:1;transform:none}
[data-parallax]{will-change:transform}

/* =============================================================================
   HERO (band 1) - 100vh dark video
   ============================================================================= */
.hero{position:relative;height:100vh;min-height:640px;display:grid;place-items:center;overflow:hidden;background:var(--ink)}
.hero__media{position:absolute;inset:0}
.hero__media video,.hero__media img{width:100%;height:100%;object-fit:cover}
.hero__scrim{position:absolute;inset:0;background:rgba(0,0,0,.62);z-index:1}
.hero__inner{position:relative;z-index:2;text-align:center;padding:0 13vw}
.hero__h1{font-family:var(--disp);font-weight:600;color:#fff;font-size:clamp(46px,9vw,129.6px);line-height:1.15;letter-spacing:-.03em}
.hero__badge{position:absolute;left:50%;bottom:-88px;transform:translateX(-50%);width:175px;height:175px;z-index:5}
.hero__badge svg{width:100%;height:100%}
.hero__badge .ring{animation:spin 15s linear infinite}
.hero__badge text{font-family:var(--body);font-weight:400;font-size:9.4px;letter-spacing:2.6px;fill:var(--ink);text-transform:uppercase}
.hero__badge .arrow{fill:none;stroke:var(--ink);stroke-width:1.4}
@keyframes spin{to{transform:rotate(360deg)}}

/* =============================================================================
   SPLIT bands (residential / commercial)
   ============================================================================= */
.split{padding:150px 0 120px;overflow-x:clip}
.split__grid{display:grid;grid-template-columns:470px 1fr;gap:40px;align-items:center}
.split--flip .split__grid{grid-template-columns:1fr 470px}
.split--flip .split__text{order:2}
.split__text .h2{margin:0 0 26px}
.split__text .lead{max-width:400px}
.stats{display:flex;gap:56px;margin-top:44px}
.stat__n{font-family:var(--disp);font-weight:600;font-size:40px;line-height:1;letter-spacing:-.02em}
.stat__l{font-size:15px;color:var(--muted);margin-top:8px;max-width:130px}

/* collage - edge bleed (clipped by .split overflow-x:clip, no doc overflow) */
.collage{position:relative;height:600px}
.collage__big{position:absolute;top:0;bottom:0;width:560px;overflow:hidden}
.collage__big img{width:100%;height:100%;object-fit:cover}
.collage__sm{position:absolute;width:280px;height:380px;overflow:hidden;box-shadow:0 34px 74px rgba(0,0,0,.24);z-index:2}
.collage__sm img{width:100%;height:100%;object-fit:cover}
/* right-bleed (residential): big flush + overshoot right; sm overlaps big bottom-left */
.split:not(.split--flip) .collage__big{right:calc(-1 * var(--gut) - 40px);left:auto}
.split:not(.split--flip) .collage__sm{right:300px;bottom:-46px;left:auto}
/* left-bleed (commercial): big flush + overshoot left; sm overlaps big bottom-right */
.split--flip .collage__big{left:calc(-1 * var(--gut) - 40px);right:auto}
.split--flip .collage__sm{left:300px;bottom:-46px;right:auto}

/* =============================================================================
   CARD CAROUSEL (band 3)
   ============================================================================= */
.carousel{padding:0 0 40px;overflow:hidden}
.carousel__track{display:flex;gap:30px;padding-left:115px;cursor:grab;user-select:none;touch-action:pan-y}
.carousel__track.drag{cursor:grabbing}
.ccard{flex:0 0 280px}
.ccard__img{height:348px;overflow:hidden;background:var(--gray)}
.ccard__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--e)}
.ccard:hover .ccard__img img{transform:scale(1.04)}
.ccard__t{font-size:22px;font-weight:400;margin:24px 0 10px;letter-spacing:-.01em}
.ccard__d{font-size:15px;color:var(--muted);line-height:1.55}

/* =============================================================================
   MARQUEE (band 5 outline + closer solid)
   ============================================================================= */
.marquee{overflow:hidden;white-space:nowrap;padding:70px 0}
.marquee__row{display:inline-flex;white-space:nowrap;will-change:transform;animation:marq 30s linear infinite}
.marquee__row span{font-family:var(--disp);font-weight:600;font-size:11vw;line-height:1;letter-spacing:-.03em;padding-right:.28em;
  color:transparent;-webkit-text-stroke:1.2px var(--ink);text-stroke:1.2px var(--ink)}
@keyframes marq{to{transform:translateX(-50%)}}

/* =============================================================================
   STATEMENT band (band 6)
   ============================================================================= */
.statement{padding:130px 0}
.statement__p{max-width:680px;margin:0 auto;text-align:center;font-family:var(--body);font-weight:300;font-size:clamp(28px,3.2vw,43.2px);
  line-height:1.42;letter-spacing:-.02em}
.statement__p .u{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.statement__p .chip-img{display:inline-block;width:56px;height:56px;border-radius:999px;object-fit:cover;vertical-align:middle;margin:0 6px;
  transform:translateY(-3px)}

/* =============================================================================
   VR full-bleed (band 7)
   ============================================================================= */
.fullbleed{height:640px;overflow:hidden;position:relative}
.fullbleed__bg{position:absolute;inset:-12% 0;background-size:cover;background-position:center;will-change:transform}

/* =============================================================================
   PORTFOLIO sticky-left (band 8)
   ============================================================================= */
.portfolio{padding:120px 0 40px}
.portfolio__grid{display:grid;grid-template-columns:1fr 720px;gap:60px}
.portfolio__left{position:relative}
.portfolio__stick{position:sticky;top:315px}
.portfolio__stick .h2{margin:14px 0 34px;max-width:360px}
.pcard{margin-bottom:96px}
.pcard__img{width:720px;max-width:100%;height:540px;overflow:hidden;background:var(--gray)}
.pcard__img img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--e)}
.pcard:hover .pcard__img img{transform:scale(1.03)}
.pcard__cat{display:flex;gap:14px;margin:26px 0 10px;font-size:13px;color:var(--slate)}
.pcard__t{font-family:var(--body);font-weight:400;font-size:28.8px;letter-spacing:-.02em;margin-bottom:14px}
.pcard__d{font-size:16px;color:var(--muted);max-width:520px;line-height:1.6}

/* =============================================================================
   CLOSER band (band 9) - peri sky + 2 white marquees behind cutout building
   ============================================================================= */
.closer{position:relative;background:var(--peri);height:844px;overflow:hidden}
.closer__marq{position:absolute;left:0;right:0;overflow:hidden;white-space:nowrap;z-index:1}
.closer__marq--1{top:150px}
.closer__marq--2{top:290px}
.closer__row{display:inline-flex;white-space:nowrap;will-change:transform;animation:marq 45s linear infinite}
.closer__row span{font-family:var(--disp);font-weight:600;font-size:10vw;line-height:1;letter-spacing:-.03em;padding-right:.3em;color:#fff}
.closer__marq--2 .closer__row{transform:translateX(-13%)}
.closer__building{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:1440px;max-width:100%;z-index:2;
  animation:closerzoom 1.4s var(--e) both}
.closer__building img{width:100%;height:auto;display:block}
@keyframes closerzoom{from{transform:translateX(-50%) scale(1.06)}to{transform:translateX(-50%) scale(1)}}

/* =============================================================================
   FOOTER - thin single row
   ============================================================================= */
.footer{background:var(--paper);border-top:1px solid var(--line)}
.footer__bar{min-height:86px;display:flex;align-items:center;gap:30px;flex-wrap:wrap;padding:20px 0}
.footer__tag{font-family:var(--disp);font-weight:600;font-size:16px}
.footer__links{display:flex;gap:26px;margin:0 auto}
.footer__links a{font-size:14px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
.footer__cr{font-size:14px;color:var(--muted)}
.footer__disc{font-size:12px;color:#9a9ca0;line-height:1.6;padding:0 0 20px;max-width:760px}

/* =============================================================================
   INNER PAGES
   ============================================================================= */
.ititle{padding:150px 0 60px}
.ititle__grid{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.ititle h1{font-family:var(--disp);font-weight:600;font-size:clamp(56px,9vw,129.6px);line-height:1;letter-spacing:-.03em}
.ititle__meta{display:flex;flex-direction:column;gap:14px;text-align:right;min-width:180px}
.ititle__meta a,.ititle__meta .mrow{font-size:17px;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.ititle__meta .mrow{text-decoration:none}
.ititle__meta .mk{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block;margin-bottom:3px}

.photoband{padding:0 var(--gut) 100px}
.photoband__in{max-width:var(--maxw);margin:0 auto;height:760px;overflow:hidden}
.photoband__in img{width:100%;height:100%;object-fit:cover}

/* team */
.team{padding:40px 0 120px}
.team__grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.team__lead .h2{margin-bottom:22px}
.pull{border-top:1px solid var(--ink);margin-top:40px;padding-top:26px}
.pull q{quotes:none;font-family:Georgia,serif;font-size:23px;line-height:1.5;color:var(--ink);display:block}
.pull__by{display:flex;align-items:center;gap:14px;margin-top:22px}
.pull__by img{width:48px;height:48px;border-radius:999px;object-fit:cover}
.pull__by b{display:block;font-weight:400;font-size:15px}
.pull__by span{font-size:15px;color:var(--muted);display:block}
.leads{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.person__img{aspect-ratio:1/1.06;overflow:hidden;background:var(--gray)}
.person__img img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .5s var(--e)}
.person:hover .person__img img{filter:none}
.person__role{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin:18px 0 5px}
.person__name{font-family:var(--body);font-weight:400;font-size:28.8px;letter-spacing:-.02em}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}

/* numbered rule-list (Culture) */
.giant{font-family:var(--disp);font-weight:600;font-size:clamp(56px,9vw,129.6px);line-height:1;letter-spacing:-.03em;padding:110px 0 30px}
.rulelist{border-top:1px solid var(--line)}
.ruleitem{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;padding:44px 0;border-bottom:1px solid var(--line)}
.ruleitem__t{font-family:var(--body);font-weight:300;font-size:clamp(24px,2.6vw,35px);line-height:1.28;letter-spacing:-.02em;max-width:820px}
.ruleitem__t .hl{background:var(--wash);padding:2px 8px}
.ruleitem__sub{font-size:14px;color:var(--muted);margin-top:14px}
.ruleitem__n{font-family:var(--disp);font-weight:600;font-size:clamp(70px,9vw,120px);line-height:1;color:#DADAD6}

/* projects masonry + filter */
.projwrap{padding:150px 0 60px}
.projwrap__grid{display:grid;grid-template-columns:200px 1fr;gap:56px;align-items:start}
.filter h4{font-size:17px;font-weight:400;margin-bottom:22px}
.filter__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px}
.filter__list button{display:flex;align-items:center;gap:12px;background:none;border:0;cursor:pointer;font-size:17px;font-family:var(--body);color:var(--ink);padding:0}
.filter__dot{width:16px;height:16px;border-radius:999px;border:1.5px solid #c9c9c6;flex:none;position:relative}
.filter__list button[aria-pressed="true"] .filter__dot{border-color:var(--ink)}
.filter__list button[aria-pressed="true"] .filter__dot::after{content:"";position:absolute;inset:3px;border-radius:999px;background:var(--ink)}
.masonry{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.mcol{display:flex;flex-direction:column;gap:26px}
.mcard{display:block}
.mcard__img{overflow:hidden;background:var(--gray)}
.mcard__img img{width:100%;display:block;transition:transform .8s var(--e)}
.mcard:hover .mcard__img img{transform:scale(1.03)}
.mcard__cat{display:flex;gap:12px;margin:20px 0 8px;font-size:13px;color:var(--slate)}
.mcard__t{font-family:var(--body);font-weight:400;font-size:28.8px;letter-spacing:-.02em}
.mcard.hide{display:none}

/* contact split form */
.contactband{padding:60px 0 120px}
.contactband__grid{display:grid;grid-template-columns:1fr 470px;gap:60px;align-items:start}
.uform{display:flex;flex-direction:column;gap:34px;max-width:520px}
.ufield{position:relative}
.ufield label{display:block;font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}
.ufield input,.ufield textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:none;font-family:var(--body);font-size:18px;
  color:var(--ink);padding:8px 0;transition:border-color .3s var(--e)}
.ufield textarea{resize:vertical;min-height:96px}
.ufield input:focus,.ufield textarea:focus{outline:0;border-color:var(--ink)}
.form-note{font-size:15px;color:var(--slate);min-height:20px}
.form-note.ok{color:#1c7a4a}
.inforows{display:flex;flex-direction:column;gap:2px}
.inforow{padding:26px 0;border-bottom:1px solid var(--line)}
.inforow .k{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}
.inforow .v{font-size:22px;font-weight:300}
.inforow .v .hl{background:var(--wash);padding:1px 6px}

.backtop{position:fixed;right:24px;bottom:24px;width:46px;height:46px;border-radius:999px;background:var(--ink);color:#fff;border:0;cursor:pointer;
  display:grid;place-items:center;opacity:0;pointer-events:none;transform:translateY(12px);transition:.4s var(--e);z-index:150}
.backtop.show{opacity:1;pointer-events:auto;transform:none}
.backtop svg{width:18px;height:18px}

/* =============================================================================
   RESPONSIVE
   ============================================================================= */
@media(max-width:1100px){
  :root{--gut:56px}
  .split__grid,.split--flip .split__grid{grid-template-columns:1fr;gap:60px}
  .split--flip .split__text{order:0}
  .collage{height:auto}
  .collage__big{position:relative;width:100%!important;right:auto!important;left:auto!important;height:520px}
  .collage__sm{position:relative;width:60%;height:280px;left:auto!important;right:auto!important;bottom:auto!important;margin:-60px 0 0 auto;box-shadow:0 20px 50px rgba(0,0,0,.2)}
  .portfolio__grid{grid-template-columns:1fr;gap:0}
  .portfolio__stick{position:static;margin-bottom:50px}
  .pcard__img,.pcard{width:100%}
  .contactband__grid{grid-template-columns:1fr}
  .team__grid{grid-template-columns:1fr;gap:50px}
  .projwrap__grid{grid-template-columns:1fr;gap:34px}
}
@media(max-width:640px){
  :root{--gut:22px}
  body{font-size:16px}
  .header__in{padding:0 18px}
  .phonebtn{height:40px;padding:0 16px;font-size:14px}
  .brand{font-size:24px}
  .hero{min-height:560px}
  .hero__inner{padding:0 22px}
  .hero__h1{font-size:39px;line-height:1.15}
  .hero__badge{width:132px;height:132px;bottom:-66px}
  .split{padding:80px 0 60px}
  .stats{gap:34px}
  .carousel__track{padding-left:22px;gap:18px}
  .ccard{flex:0 0 74vw}
  .marquee__row span{font-size:15vw}
  .statement{padding:80px 0}
  .statement__p .chip-img{width:40px;height:40px}
  .fullbleed{height:420px}
  .portfolio__stick .h2,.split__text .lead{max-width:none}
  .pcard__img{height:64vw}
  .giant{font-size:16vw;padding:70px 0 20px}
  .ruleitem{grid-template-columns:1fr;gap:16px}
  .ruleitem__n{font-size:60px}
  .leads,.grid3{grid-template-columns:1fr 1fr}
  .team__grid{gap:40px}
  .closer{height:600px}
  .closer__marq--1{top:90px}.closer__marq--2{top:190px}
  .closer__row span{font-size:13vw}
  .photoband{padding:0 22px 60px}
  .photoband__in{height:400px}
  .offcanvas__panel{padding:0 40px}
  .offcanvas__nav a{font-size:40px}
  .offcanvas__close{left:-24px;width:48px;height:48px}
  .ititle__grid{flex-direction:column;align-items:flex-start;gap:24px}
  .ititle__meta{text-align:left}
  .footer__links{margin:0}
  .masonry{grid-template-columns:1fr}
}

/* =============================================================================
   REDUCED MOTION
   ============================================================================= */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .reveal{opacity:1!important;transform:none!important}
  .hero__media video{display:none}
  .hero__media img{display:block!important}
  .marquee__row,.closer__row{animation:none!important}
  .hero__badge .ring{animation:none!important}
  .header{opacity:1;transform:none}
}
